Raspbian Package Auto-Building

Build log for groonga (8.0.0-1) on armhf

groonga8.0.0-1armhf → 2018-02-26 11:24:29

sbuild (Debian sbuild) 0.71.0 (24 Aug 2016) on bm-wb-03

+==============================================================================+
| groonga 8.0.0-1 (armhf)                      Mon, 26 Feb 2018 10:35:11 +0000 |
+==============================================================================+

Package: groonga
Version: 8.0.0-1
Source Version: 8.0.0-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-630fd9b5-9415-4132-8645-04a9f5b67977' 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.6 MB]
Get:3 http://172.17.0.1/private buster-staging/main armhf Packages [12.4 MB]
Fetched 23.0 MB in 26s (885 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 8.0.0-1 (dsc) [3068 B]
Get:2 http://172.17.0.1/private buster-staging/main groonga 8.0.0-1 (tar) [14.0 MB]
Get:3 http://172.17.0.1/private buster-staging/main groonga 8.0.0-1 (asc) [195 B]
Get:4 http://172.17.0.1/private buster-staging/main groonga 8.0.0-1 (diff) [95.9 kB]
Fetched 14.1 MB in 2s (8930 kB/s)
Download complete and in download only mode
I: NOTICE: Log filtering will replace 'build/groonga-AMfbIg/groonga-8.0.0' with '<<PKGBUILDDIR>>'
I: NOTICE: Log filtering will replace 'build/groonga-AMfbIg' 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-AsNNXc/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-AsNNXc/gpg/pubring.kbx' created
gpg: /<<BUILDDIR>>/resolver-AsNNXc/gpg/trustdb.gpg: trustdb created
gpg: key 35506D9A48F77B2E: public key "Sbuild Signer (Sbuild Build Dependency Archive Key) <buildd-tools-devel@lists.alioth.debian.org>" imported
gpg: Total number processed: 1
gpg:               imported: 1
gpg: key 35506D9A48F77B2E: "Sbuild Signer (Sbuild Build Dependency Archive Key) <buildd-tools-devel@lists.alioth.debian.org>" not changed
gpg: key 35506D9A48F77B2E: secret key imported
gpg: Total number processed: 1
gpg:              unchanged: 1
gpg:       secret keys read: 1
gpg:   secret keys imported: 1
gpg: using "Sbuild Signer" as default secret key for signing
Ign:1 copy:/<<BUILDDIR>>/resolver-AsNNXc/apt_archive ./ InRelease
Get:2 copy:/<<BUILDDIR>>/resolver-AsNNXc/apt_archive ./ Release [957 B]
Get:3 copy:/<<BUILDDIR>>/resolver-AsNNXc/apt_archive ./ Release.gpg [370 B]
Get:4 copy:/<<BUILDDIR>>/resolver-AsNNXc/apt_archive ./ Sources [349 B]
Get:5 copy:/<<BUILDDIR>>/resolver-AsNNXc/apt_archive ./ Packages [433 B]
Fetched 2109 B in 1s (2778 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 package was automatically installed and is no longer required:
  e2fsprogs-l10n
Use 'apt autoremove' to remove it.
The following NEW packages will be installed:
  sbuild-build-depends-core-dummy
0 upgraded, 1 newly installed, 0 to remove and 84 not upgraded.
Need to get 848 B of archives.
After this operation, 0 B of additional disk space will be used.
Get:1 copy:/<<BUILDDIR>>/resolver-AsNNXc/apt_archive ./ sbuild-build-depends-core-dummy 0.invalid.0 [848 B]
debconf: delaying package configuration, since apt-utils is not installed
Fetched 848 B in 0s (21.5 kB/s)
Selecting previously unselected package sbuild-build-depends-core-dummy.
(Reading database ... 13278 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-AsNNXc/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-AsNNXc/apt_archive ./ InRelease
Get:2 copy:/<<BUILDDIR>>/resolver-AsNNXc/apt_archive ./ Release [963 B]
Get:3 copy:/<<BUILDDIR>>/resolver-AsNNXc/apt_archive ./ Release.gpg [370 B]
Get:4 copy:/<<BUILDDIR>>/resolver-AsNNXc/apt_archive ./ Sources [568 B]
Get:5 copy:/<<BUILDDIR>>/resolver-AsNNXc/apt_archive ./ Packages [645 B]
Fetched 2546 B in 1s (3375 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 package was automatically installed and is no longer required:
  e2fsprogs-l10n
Use 'apt autoremove' to remove it.
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 libgdbm5
  libglib2.0-0 libgssapi-krb5-2 libicu57 libjemalloc-dev libjemalloc1
  libk5crypto3 libkeyutils1 libkrb5-3 libkrb5support0 liblz4-dev libmagic-mgc
  libmagic1 libmecab-dev libmecab2 libmsgpack-dev libmsgpackc2 libnorm1
  libpcre16-3 libpcre3 libpcre3-dev libpcre32-3 libpcrecpp0v5 libpgm-5.2-0
  libpipeline1 libsigsegv2 libsodium23 libssl-dev libssl1.1 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
  gdbm-l10n krb5-doc krb5-user libmsgpack-doc libtool-doc gfortran
  | fortran95-compiler gcj-jdk m4-doc apparmor less www-browser
  libmail-box-perl
Recommended packages:
  curl | wget | lynx-cur libarchive-cpio-perl libglib2.0-data shared-mime-info
  xdg-user-dirs krb5-locales 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 libgdbm5
  libglib2.0-0 libgssapi-krb5-2 libicu57 libjemalloc-dev libjemalloc1
  libk5crypto3 libkeyutils1 libkrb5-3 libkrb5support0 liblz4-dev libmagic-mgc
  libmagic1 libmecab-dev libmecab2 libmsgpack-dev libmsgpackc2 libnorm1
  libpcre16-3 libpcre3-dev libpcre32-3 libpcrecpp0v5 libpgm-5.2-0 libpipeline1
  libsigsegv2 libsodium23 libssl-dev libssl1.1 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
The following packages will be upgraded:
  libpcre3
1 upgraded, 66 newly installed, 0 to remove and 83 not upgraded.
Need to get 25.9 MB/27.0 MB of archives.
After this operation, 95.5 MB of additional disk space will be used.
Get:1 copy:/<<BUILDDIR>>/resolver-AsNNXc/apt_archive ./ sbuild-build-depends-groonga-dummy 0.invalid.0 [932 B]
Get:2 http://172.17.0.1/private buster-staging/main armhf libbsd0 armhf 0.8.7-1 [96.8 kB]
Get:3 http://172.17.0.1/private buster-staging/main armhf bsdmainutils armhf 11.1.2 [182 kB]
Get:4 http://172.17.0.1/private buster-staging/main armhf groff-base armhf 1.22.3-10 [1005 kB]
Get:5 http://172.17.0.1/private buster-staging/main armhf libgdbm5 armhf 1.14.1-4 [54.0 kB]
Get:6 http://172.17.0.1/private buster-staging/main armhf libpipeline1 armhf 1.5.0-1 [24.6 kB]
Get:7 http://172.17.0.1/private buster-staging/main armhf man-db armhf 2.8.1-1+b1 [1143 kB]
Get:8 http://172.17.0.1/private buster-staging/main armhf libstemmer0d armhf 0+svn585-1 [53.5 kB]
Get:9 http://172.17.0.1/private buster-staging/main armhf libpcre3 armhf 2:8.39-9 [313 kB]
Get:10 http://172.17.0.1/private buster-staging/main armhf libmagic-mgc armhf 1:5.32-2 [225 kB]
Get:11 http://172.17.0.1/private buster-staging/main armhf libmagic1 armhf 1:5.32-2 [105 kB]
Get:12 http://172.17.0.1/private buster-staging/main armhf file armhf 1:5.32-2 [63.8 kB]
Get:13 http://172.17.0.1/private buster-staging/main armhf gettext-base armhf 0.19.8.1-4 [117 kB]
Get:14 http://172.17.0.1/private buster-staging/main armhf libevent-2.1-6 armhf 2.1.8-stable-4 [156 kB]
Get:15 http://172.17.0.1/private buster-staging/main armhf libkeyutils1 armhf 1.5.9-9.2 [12.1 kB]
Get:16 http://172.17.0.1/private buster-staging/main armhf libsigsegv2 armhf 2.12-1 [32.2 kB]
Get:17 http://172.17.0.1/private buster-staging/main armhf m4 armhf 1.4.18-1 [185 kB]
Get:18 http://172.17.0.1/private buster-staging/main armhf autoconf all 2.69-11 [341 kB]
Get:19 http://172.17.0.1/private buster-staging/main armhf autotools-dev all 20171216.1 [75.9 kB]
Get:20 http://172.17.0.1/private buster-staging/main armhf automake all 1:1.15.1-3 [736 kB]
Get:21 http://172.17.0.1/private buster-staging/main armhf autopoint all 0.19.8.1-4 [434 kB]
Get:22 http://172.17.0.1/private buster-staging/main armhf libtool all 2.4.6-2 [545 kB]
Get:23 http://172.17.0.1/private buster-staging/main armhf dh-autoreconf all 16 [16.3 kB]
Get:24 http://172.17.0.1/private buster-staging/main armhf libarchive-zip-perl all 1.60-1 [95.6 kB]
Get:25 http://172.17.0.1/private buster-staging/main armhf libfile-stripnondeterminism-perl all 0.040-1 [18.4 kB]
Get:26 http://172.17.0.1/private buster-staging/main armhf libtimedate-perl all 2.3000-2 [42.2 kB]
Get:27 http://172.17.0.1/private buster-staging/main armhf dh-strip-nondeterminism all 0.040-1 [11.8 kB]
Get:28 http://172.17.0.1/private buster-staging/main armhf libglib2.0-0 armhf 2.54.3-2 [2651 kB]
Get:29 http://172.17.0.1/private buster-staging/main armhf libicu57 armhf 57.1-8 [7411 kB]
Get:30 http://172.17.0.1/private buster-staging/main armhf libxml2 armhf 2.9.4+dfsg1-6.1 [602 kB]
Get:31 http://172.17.0.1/private buster-staging/main armhf libcroco3 armhf 0.6.12-2 [132 kB]
Get:32 http://172.17.0.1/private buster-staging/main armhf gettext armhf 0.19.8.1-4 [1218 kB]
Get:33 http://172.17.0.1/private buster-staging/main armhf intltool-debian all 0.35.0+20060710.4 [26.3 kB]
Get:34 http://172.17.0.1/private buster-staging/main armhf po-debconf all 1.0.20 [247 kB]
Get:35 http://172.17.0.1/private buster-staging/main armhf debhelper all 11.1.4 [1005 kB]
Get:36 http://172.17.0.1/private buster-staging/main armhf libevent-core-2.1-6 armhf 2.1.8-stable-4 [117 kB]
Get:37 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:38 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:39 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:40 http://172.17.0.1/private buster-staging/main armhf libevent-dev armhf 2.1.8-stable-4 [276 kB]
Get:41 http://172.17.0.1/private buster-staging/main armhf libkrb5support0 armhf 1.16-2 [59.0 kB]
Get:42 http://172.17.0.1/private buster-staging/main armhf libk5crypto3 armhf 1.16-2 [116 kB]
Get:43 http://172.17.0.1/private buster-staging/main armhf libkrb5-3 armhf 1.16-2 [265 kB]
Get:44 http://172.17.0.1/private buster-staging/main armhf libgssapi-krb5-2 armhf 1.16-2 [135 kB]
Get:45 http://172.17.0.1/private buster-staging/main armhf libjemalloc1 armhf 3.6.0-11 [83.1 kB]
Get:46 http://172.17.0.1/private buster-staging/main armhf libjemalloc-dev armhf 3.6.0-11 [176 kB]
Get:47 http://172.17.0.1/private buster-staging/main armhf libmecab2 armhf 0.996-5 [213 kB]
Get:48 http://172.17.0.1/private buster-staging/main armhf libmecab-dev armhf 0.996-5 [269 kB]
Get:49 http://172.17.0.1/private buster-staging/main armhf libmsgpackc2 armhf 2.1.5-1 [18.7 kB]
Get:50 http://172.17.0.1/private buster-staging/main armhf libmsgpack-dev armhf 2.1.5-1 [226 kB]
Get:51 http://172.17.0.1/private buster-staging/main armhf libnorm1 armhf 1.5r6+dfsg1-6 [196 kB]
Get:52 http://172.17.0.1/private buster-staging/main armhf libpcre16-3 armhf 2:8.39-9 [234 kB]
Get:53 http://172.17.0.1/private buster-staging/main armhf libpcre32-3 armhf 2:8.39-9 [226 kB]
Get:54 http://172.17.0.1/private buster-staging/main armhf libpcrecpp0v5 armhf 2:8.39-9 [150 kB]
Get:55 http://172.17.0.1/private buster-staging/main armhf libpcre3-dev armhf 2:8.39-9 [561 kB]
Get:56 http://172.17.0.1/private buster-staging/main armhf libpgm-5.2-0 armhf 5.2.122~dfsg-2 [153 kB]
Get:57 http://172.17.0.1/private buster-staging/main armhf libsodium23 armhf 1.0.16-2 [139 kB]
Get:58 http://172.17.0.1/private buster-staging/main armhf libssl-dev armhf 1.1.0g-2 [1371 kB]
Get:59 http://172.17.0.1/private buster-staging/main armhf libstemmer-dev armhf 0+svn585-1 [62.2 kB]
Get:60 http://172.17.0.1/private buster-staging/main armhf libzmq5 armhf 4.2.3-1+b1 [213 kB]
Get:61 http://172.17.0.1/private buster-staging/main armhf libzmq3-dev armhf 4.2.3-1+b1 [394 kB]
Get:62 http://172.17.0.1/private buster-staging/main armhf libzstd1 armhf 1.3.3+dfsg-1+rpi1 [161 kB]
Get:63 http://172.17.0.1/private buster-staging/main armhf libzstd-dev armhf 1.3.3+dfsg-1+rpi1 [202 kB]
Get:64 http://172.17.0.1/private buster-staging/main armhf pkg-config armhf 0.29-4 [59.2 kB]
Get:65 http://172.17.0.1/private buster-staging/main armhf zlib1g-dev armhf 1:1.2.8.dfsg-5 [198 kB]
Get:66 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 25.9 MB in 2s (10.4 MB/s)
Selecting previously unselected package libbsd0:armhf.
(Reading database ... 13278 files and directories currently installed.)
Preparing to unpack .../0-libbsd0_0.8.7-1_armhf.deb ...
Unpacking libbsd0:armhf (0.8.7-1) ...
Selecting previously unselected package bsdmainutils.
Preparing to unpack .../1-bsdmainutils_11.1.2_armhf.deb ...
Unpacking bsdmainutils (11.1.2) ...
Selecting previously unselected package groff-base.
Preparing to unpack .../2-groff-base_1.22.3-10_armhf.deb ...
Unpacking groff-base (1.22.3-10) ...
Selecting previously unselected package libgdbm5:armhf.
Preparing to unpack .../3-libgdbm5_1.14.1-4_armhf.deb ...
Unpacking libgdbm5:armhf (1.14.1-4) ...
Selecting previously unselected package libpipeline1:armhf.
Preparing to unpack .../4-libpipeline1_1.5.0-1_armhf.deb ...
Unpacking libpipeline1:armhf (1.5.0-1) ...
Selecting previously unselected package man-db.
Preparing to unpack .../5-man-db_2.8.1-1+b1_armhf.deb ...
Unpacking man-db (2.8.1-1+b1) ...
Selecting previously unselected package libstemmer0d:armhf.
Preparing to unpack .../6-libstemmer0d_0+svn585-1_armhf.deb ...
Unpacking libstemmer0d:armhf (0+svn585-1) ...
Preparing to unpack .../7-libpcre3_2%3a8.39-9_armhf.deb ...
Unpacking libpcre3:armhf (2:8.39-9) over (2:8.39-8) ...
Setting up libpcre3:armhf (2:8.39-9) ...
Selecting previously unselected package libssl1.1:armhf.
(Reading database ... 13905 files and directories currently installed.)
Preparing to unpack .../00-libssl1.1_1.1.0g-2_armhf.deb ...
Unpacking libssl1.1:armhf (1.1.0g-2) ...
Selecting previously unselected package libmagic-mgc.
Preparing to unpack .../01-libmagic-mgc_1%3a5.32-2_armhf.deb ...
Unpacking libmagic-mgc (1:5.32-2) ...
Selecting previously unselected package libmagic1:armhf.
Preparing to unpack .../02-libmagic1_1%3a5.32-2_armhf.deb ...
Unpacking libmagic1:armhf (1:5.32-2) ...
Selecting previously unselected package file.
Preparing to unpack .../03-file_1%3a5.32-2_armhf.deb ...
Unpacking file (1:5.32-2) ...
Selecting previously unselected package gettext-base.
Preparing to unpack .../04-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 .../05-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 libkeyutils1:armhf.
Preparing to unpack .../06-libkeyutils1_1.5.9-9.2_armhf.deb ...
Unpacking libkeyutils1:armhf (1.5.9-9.2) ...
Selecting previously unselected package libsigsegv2:armhf.
Preparing to unpack .../07-libsigsegv2_2.12-1_armhf.deb ...
Unpacking libsigsegv2:armhf (2.12-1) ...
Selecting previously unselected package m4.
Preparing to unpack .../08-m4_1.4.18-1_armhf.deb ...
Unpacking m4 (1.4.18-1) ...
Selecting previously unselected package autoconf.
Preparing to unpack .../09-autoconf_2.69-11_all.deb ...
Unpacking autoconf (2.69-11) ...
Selecting previously unselected package autotools-dev.
Preparing to unpack .../10-autotools-dev_20171216.1_all.deb ...
Unpacking autotools-dev (20171216.1) ...
Selecting previously unselected package automake.
Preparing to unpack .../11-automake_1%3a1.15.1-3_all.deb ...
Unpacking automake (1:1.15.1-3) ...
Selecting previously unselected package autopoint.
Preparing to unpack .../12-autopoint_0.19.8.1-4_all.deb ...
Unpacking autopoint (0.19.8.1-4) ...
Selecting previously unselected package libtool.
Preparing to unpack .../13-libtool_2.4.6-2_all.deb ...
Unpacking libtool (2.4.6-2) ...
Selecting previously unselected package dh-autoreconf.
Preparing to unpack .../14-dh-autoreconf_16_all.deb ...
Unpacking dh-autoreconf (16) ...
Selecting previously unselected package libarchive-zip-perl.
Preparing to unpack .../15-libarchive-zip-perl_1.60-1_all.deb ...
Unpacking libarchive-zip-perl (1.60-1) ...
Selecting previously unselected package libfile-stripnondeterminism-perl.
Preparing to unpack .../16-libfile-stripnondeterminism-perl_0.040-1_all.deb ...
Unpacking libfile-stripnondeterminism-perl (0.040-1) ...
Selecting previously unselected package libtimedate-perl.
Preparing to unpack .../17-libtimedate-perl_2.3000-2_all.deb ...
Unpacking libtimedate-perl (2.3000-2) ...
Selecting previously unselected package dh-strip-nondeterminism.
Preparing to unpack .../18-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 .../19-libglib2.0-0_2.54.3-2_armhf.deb ...
Unpacking libglib2.0-0:armhf (2.54.3-2) ...
Selecting previously unselected package libicu57:armhf.
Preparing to unpack .../20-libicu57_57.1-8_armhf.deb ...
Unpacking libicu57:armhf (57.1-8) ...
Selecting previously unselected package libxml2:armhf.
Preparing to unpack .../21-libxml2_2.9.4+dfsg1-6.1_armhf.deb ...
Unpacking libxml2:armhf (2.9.4+dfsg1-6.1) ...
Selecting previously unselected package libcroco3:armhf.
Preparing to unpack .../22-libcroco3_0.6.12-2_armhf.deb ...
Unpacking libcroco3:armhf (0.6.12-2) ...
Selecting previously unselected package gettext.
Preparing to unpack .../23-gettext_0.19.8.1-4_armhf.deb ...
Unpacking gettext (0.19.8.1-4) ...
Selecting previously unselected package intltool-debian.
Preparing to unpack .../24-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 .../25-po-debconf_1.0.20_all.deb ...
Unpacking po-debconf (1.0.20) ...
Selecting previously unselected package debhelper.
Preparing to unpack .../26-debhelper_11.1.4_all.deb ...
Unpacking debhelper (11.1.4) ...
Selecting previously unselected package libevent-core-2.1-6:armhf.
Preparing to unpack .../27-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 .../28-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 .../29-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 .../30-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 .../31-libevent-dev_2.1.8-stable-4_armhf.deb ...
Unpacking libevent-dev (2.1.8-stable-4) ...
Selecting previously unselected package libkrb5support0:armhf.
Preparing to unpack .../32-libkrb5support0_1.16-2_armhf.deb ...
Unpacking libkrb5support0:armhf (1.16-2) ...
Selecting previously unselected package libk5crypto3:armhf.
Preparing to unpack .../33-libk5crypto3_1.16-2_armhf.deb ...
Unpacking libk5crypto3:armhf (1.16-2) ...
Selecting previously unselected package libkrb5-3:armhf.
Preparing to unpack .../34-libkrb5-3_1.16-2_armhf.deb ...
Unpacking libkrb5-3:armhf (1.16-2) ...
Selecting previously unselected package libgssapi-krb5-2:armhf.
Preparing to unpack .../35-libgssapi-krb5-2_1.16-2_armhf.deb ...
Unpacking libgssapi-krb5-2:armhf (1.16-2) ...
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-5_armhf.deb ...
Unpacking libmecab2:armhf (0.996-5) ...
Selecting previously unselected package libmecab-dev.
Preparing to unpack .../39-libmecab-dev_0.996-5_armhf.deb ...
Unpacking libmecab-dev (0.996-5) ...
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 libnorm1:armhf.
Preparing to unpack .../42-libnorm1_1.5r6+dfsg1-6_armhf.deb ...
Unpacking libnorm1:armhf (1.5r6+dfsg1-6) ...
Selecting previously unselected package libpcre16-3:armhf.
Preparing to unpack .../43-libpcre16-3_2%3a8.39-9_armhf.deb ...
Unpacking libpcre16-3:armhf (2:8.39-9) ...
Selecting previously unselected package libpcre32-3:armhf.
Preparing to unpack .../44-libpcre32-3_2%3a8.39-9_armhf.deb ...
Unpacking libpcre32-3:armhf (2:8.39-9) ...
Selecting previously unselected package libpcrecpp0v5:armhf.
Preparing to unpack .../45-libpcrecpp0v5_2%3a8.39-9_armhf.deb ...
Unpacking libpcrecpp0v5:armhf (2:8.39-9) ...
Selecting previously unselected package libpcre3-dev:armhf.
Preparing to unpack .../46-libpcre3-dev_2%3a8.39-9_armhf.deb ...
Unpacking libpcre3-dev:armhf (2:8.39-9) ...
Selecting previously unselected package libpgm-5.2-0:armhf.
Preparing to unpack .../47-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 libsodium23:armhf.
Preparing to unpack .../48-libsodium23_1.0.16-2_armhf.deb ...
Unpacking libsodium23:armhf (1.0.16-2) ...
Selecting previously unselected package libssl-dev:armhf.
Preparing to unpack .../49-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 .../50-libstemmer-dev_0+svn585-1_armhf.deb ...
Unpacking libstemmer-dev:armhf (0+svn585-1) ...
Selecting previously unselected package libzmq5:armhf.
Preparing to unpack .../51-libzmq5_4.2.3-1+b1_armhf.deb ...
Unpacking libzmq5:armhf (4.2.3-1+b1) ...
Selecting previously unselected package libzmq3-dev:armhf.
Preparing to unpack .../52-libzmq3-dev_4.2.3-1+b1_armhf.deb ...
Unpacking libzmq3-dev:armhf (4.2.3-1+b1) ...
Selecting previously unselected package libzstd1.
Preparing to unpack .../53-libzstd1_1.3.3+dfsg-1+rpi1_armhf.deb ...
Unpacking libzstd1 (1.3.3+dfsg-1+rpi1) ...
Selecting previously unselected package libzstd-dev.
Preparing to unpack .../54-libzstd-dev_1.3.3+dfsg-1+rpi1_armhf.deb ...
Unpacking libzstd-dev (1.3.3+dfsg-1+rpi1) ...
Selecting previously unselected package pkg-config.
Preparing to unpack .../55-pkg-config_0.29-4_armhf.deb ...
Unpacking pkg-config (0.29-4) ...
Selecting previously unselected package zlib1g-dev:armhf.
Preparing to unpack .../56-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 .../57-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 .../58-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.60-1) ...
Setting up libjemalloc1 (3.6.0-11) ...
Setting up libtimedate-perl (2.3000-2) ...
Setting up libsigsegv2:armhf (2.12-1) ...
Setting up groff-base (1.22.3-10) ...
Setting up libglib2.0-0:armhf (2.54.3-2) ...
No schema files found: doing nothing.
Setting up libzstd1 (1.3.3+dfsg-1+rpi1) ...
Setting up gettext-base (0.19.8.1-4) ...
Setting up libstemmer0d:armhf (0+svn585-1) ...
Setting up libmecab2:armhf (0.996-5) ...
Setting up libpipeline1:armhf (1.5.0-1) ...
Setting up m4 (1.4.18-1) ...
Setting up libgdbm5:armhf (1.14.1-4) ...
Setting up libicu57:armhf (57.1-8) ...
Setting up libbsd0:armhf (0.8.7-1) ...
Setting up libjemalloc-dev (3.6.0-11) ...
Setting up libxml2:armhf (2.9.4+dfsg1-6.1) ...
Setting up libstemmer-dev:armhf (0+svn585-1) ...
Setting up libmagic-mgc (1:5.32-2) ...
Setting up libmagic1:armhf (1:5.32-2) ...
Setting up libcroco3:armhf (0.6.12-2) ...
Setting up libnorm1:armhf (1.5r6+dfsg1-6) ...
Setting up libsodium23:armhf (1.0.16-2) ...
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.26-4+rpi1) ...
Setting up autotools-dev (20171216.1) ...
Setting up libssl1.1:armhf (1.1.0g-2) ...
Setting up libzstd-dev (1.3.3+dfsg-1+rpi1) ...
Setting up libpcrecpp0v5:armhf (2:8.39-9) ...
Setting up libpcre32-3:armhf (2:8.39-9) ...
Setting up libpcre16-3:armhf (2:8.39-9) ...
Setting up liblz4-dev:armhf (0.0~r131-2) ...
Setting up libkeyutils1:armhf (1.5.9-9.2) ...
Setting up bsdmainutils (11.1.2) ...
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-9) ...
Setting up libmecab-dev (0.996-5) ...
Setting up gettext (0.19.8.1-4) ...
Setting up libssl-dev:armhf (1.1.0g-2) ...
Setting up libevent-openssl-2.1-6:armhf (2.1.8-stable-4) ...
Setting up libmsgpack-dev (2.1.5-1) ...
Setting up autoconf (2.69-11) ...
Setting up file (1:5.32-2) ...
Setting up libkrb5support0:armhf (1.16-2) ...
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.8.1-1+b1) ...
Not building database; man-db/auto-update is not 'true'.
Setting up libtool (2.4.6-2) ...
Setting up libk5crypto3:armhf (1.16-2) ...
Setting up po-debconf (1.0.20) ...
Setting up libkrb5-3:armhf (1.16-2) ...
Setting up libgssapi-krb5-2:armhf (1.16-2) ...
Setting up libzmq5:armhf (4.2.3-1+b1) ...
Setting up libzmq3-dev:armhf (4.2.3-1+b1) ...
Setting up dh-autoreconf (16) ...
Setting up dh-strip-nondeterminism (0.040-1) ...
Setting up debhelper (11.1.4) ...
Setting up sbuild-build-depends-groonga-dummy (0.invalid.0) ...
Processing triggers for libc-bin (2.26-4+rpi1) ...
W: No sandbox user '_apt' on the system, can not drop privileges

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

Kernel: Linux 4.9.0-0.bpo.2-armmp armhf (armv7l)
Toolchain package versions: binutils_2.29.1-13+rpi1 dpkg-dev_1.19.0.5 g++-7_7.2.0-19+b1 gcc-7_7.2.0-19+b1 libc6-dev_2.26-4+rpi1 libstdc++-7-dev_7.2.0-19+b1 libstdc++6_7.2.0-19+b1 linux-libc-dev_4.9.51-1+rpi3+b1
Package versions: adduser_3.116 apt_1.6~alpha6 autoconf_2.69-11 automake_1:1.15.1-3 autopoint_0.19.8.1-4 autotools-dev_20171216.1 base-files_10.1+rpi1 base-passwd_3.5.44 bash_4.4-5 binutils_2.29.1-13+rpi1 binutils-arm-linux-gnueabihf_2.29.1-13+rpi1 binutils-common_2.29.1-13+rpi1 bsdmainutils_11.1.2 bsdutils_1:2.30.2-0.3 build-essential_12.4 bzip2_1.0.6-8.1 coreutils_8.28-1 cpio_2.12+dfsg-6 cpp_4:7.2.0-1d1 cpp-7_7.2.0-19+b1 dash_0.5.8-2.10 debconf_1.5.65 debhelper_11.1.4 debianutils_4.8.4 dh-autoreconf_16 dh-strip-nondeterminism_0.040-1 diffutils_1:3.6-1 dirmngr_2.2.4-1 dmsetup_2:1.02.145-4.1 dpkg_1.19.0.5 dpkg-dev_1.19.0.5 e2fslibs_1.43.8-2 e2fsprogs_1.43.8-2 e2fsprogs-l10n_1.43.8-2 fakeroot_1.22-2 fdisk_2.30.2-0.3 file_1:5.32-2 findutils_4.6.0+git+20170828-2 g++_4:7.2.0-1d1 g++-7_7.2.0-19+b1 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-6-base_6.4.0-11 gcc-7_7.2.0-19+b1 gcc-7-base_7.2.0-19+b1 gettext_0.19.8.1-4 gettext-base_0.19.8.1-4 gnupg_2.2.4-1 gnupg-l10n_2.2.4-1 gnupg-utils_2.2.4-1 gpg_2.2.4-1 gpg-agent_2.2.4-1 gpg-wks-client_2.2.4-1 gpg-wks-server_2.2.4-1 gpgconf_2.2.4-1 gpgsm_2.2.4-1 gpgv_2.2.4-1 grep_3.1-2 groff-base_1.22.3-10 gzip_1.6-5 hostname_3.20 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-11+rpi1 kmod_25-1 libacl1_2.2.52-3 libapparmor1_2.12-2 libapt-pkg5.0_1.6~alpha6 libarchive-zip-perl_1.60-1 libasan4_7.2.0-19+b1 libassuan0_2.5.1-1 libatomic1_7.2.0-19+b1 libattr1_1:2.4.47-2 libaudit-common_1:2.8.2-1 libaudit1_1:2.8.2-1 libbinutils_2.29.1-13+rpi1 libblkid1_2.30.2-0.3 libbsd0_0.8.7-1 libbz2-1.0_1.0.6-8.1 libc-bin_2.26-4+rpi1 libc-dev-bin_2.26-4+rpi1 libc6_2.26-4+rpi1 libc6-dev_2.26-4+rpi1 libcap-ng0_0.7.7-3.1+b1 libcap2_1:2.25-1.2 libcc1-0_7.2.0-19+b1 libcilkrts5_7.2.0-19+b1 libcomerr2_1.43.8-2 libcroco3_0.6.12-2 libcryptsetup4_2:1.7.5-1 libdb5.3_5.3.28-13.1 libdbus-1-3_1.12.2-1 libdebconfclient0_0.239 libdevmapper1.02.1_2:1.02.145-4.1 libdpkg-perl_1.19.0.5 libdrm-common_2.4.89-1+rpi1 libdrm2_2.4.89-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.3 libffi6_3.2.1-8 libfile-stripnondeterminism-perl_0.040-1 libgcc-7-dev_7.2.0-19+b1 libgcc1_1:7.2.0-19+b1 libgcrypt20_1.8.1-4 libgdbm3_1.8.3-14 libgdbm5_1.14.1-4 libglib2.0-0_2.54.3-2 libgmp10_2:6.1.2+dfsg-2 libgnutls30_3.5.17-1 libgomp1_7.2.0-19+b1 libgpg-error0_1.27-5 libgssapi-krb5-2_1.16-2 libhogweed4_3.4-1 libicu57_57.1-8 libidn11_1.33-2.1 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 libk5crypto3_1.16-2 libkeyutils1_1.5.9-9.2 libklibc_2.0.4-11+rpi1 libkmod2_25-1 libkrb5-3_1.16-2 libkrb5support0_1.16-2 libksba8_1.3.5-2 libldap-2.4-2_2.4.45+dfsg-1 libldap-common_2.4.45+dfsg-1 liblocale-gettext-perl_1.07-3+b2 liblz4-1_0.0~r131-2 liblz4-dev_0.0~r131-2 liblzma5_5.2.2-1.3 libmagic-mgc_1:5.32-2 libmagic1_1:5.32-2 libmecab-dev_0.996-5 libmecab2_0.996-5 libmount1_2.30.2-0.3 libmpc3_1.1.0-1 libmpfr6_4.0.0-7 libmsgpack-dev_2.1.5-1 libmsgpackc2_2.1.5-1 libncurses5_6.0+20171125-1 libncursesw5_6.0+20171125-1 libnettle6_3.4-1 libnorm1_1.5r6+dfsg1-6 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-9 libpcre3_2:8.39-9 libpcre3-dev_2:8.39-9 libpcre32-3_2:8.39-9 libpcrecpp0v5_2:8.39-9 libperl5.26_5.26.1-4 libpgm-5.2-0_5.2.122~dfsg-2 libpipeline1_1.5.0-1 libplymouth4_0.9.3-2 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-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.12-1 libsmartcols1_2.30.2-0.3 libsodium23_1.0.16-2 libsqlite3-0_3.22.0-1 libss2_1.43.8-2 libssl-dev_1.1.0g-2 libssl1.1_1.1.0g-2 libstdc++-7-dev_7.2.0-19+b1 libstdc++6_7.2.0-19+b1 libstemmer-dev_0+svn585-1 libstemmer0d_0+svn585-1 libsystemd0_236-2 libtasn1-6_4.13-2 libtext-charwidth-perl_0.04-7.1 libtext-iconv-perl_1.7-5+b9 libtext-wrapi18n-perl_0.06-7.1 libtimedate-perl_2.3000-2 libtinfo5_6.0+20171125-1 libtool_2.4.6-2 libubsan0_7.2.0-19+b1 libudev1_236-2 libunistring2_0.9.8-1 libuuid1_2.30.2-0.3 libxml2_2.9.4+dfsg1-6.1 libzmq3-dev_4.2.3-1+b1 libzmq5_4.2.3-1+b1 libzstd-dev_1.3.3+dfsg-1+rpi1 libzstd1_1.3.3+dfsg-1+rpi1 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.8.1-1+b1 mawk_1.3.3-17 mount_2.30.2-0.3 multiarch-support_2.26-4+rpi1 nano_2.9.2-1 ncurses-base_6.0+20171125-1 ncurses-bin_6.0+20171125-1 passwd_1:4.5-1 patch_2.7.5-1 perl_5.26.1-4 perl-base_5.26.1-4 perl-modules-5.26_5.26.1-4 pinentry-curses_1.0.0-3 pkg-config_0.29-4 plymouth_0.9.3-2 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-2 sensible-utils_0.0.11 systemd_236-2 sysvinit-utils_2.88dsf-59.10 tar_1.29b-2 tzdata_2018c-1 udev_236-2 util-linux_2.30.2-0.3 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 Tue Feb 20 21:39:44 2018 UTC
gpgv:                using RSA key 9236557B170C87F8821C0AC3C1E0D92E986F7C7E
gpgv: Can't check signature: No public key
dpkg-source: warning: failed to verify signature on ./groonga_8.0.0-1.dsc
dpkg-source: info: extracting groonga in /<<PKGBUILDDIR>>
dpkg-source: info: unpacking groonga_8.0.0.orig.tar.gz
dpkg-source: info: unpacking groonga_8.0.0-1.debian.tar.xz
dpkg-source: info: applying fix-nginx-FTBFS-on-kfreebsd.patch

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

Sufficient free space for build

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

APT_CONFIG=/var/lib/sbuild/apt.conf
DEB_BUILD_OPTIONS=parallel=4
HOME=/sbuild-nonexistent
LC_ALL=POSIX
LOGNAME=root
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=109
SCHROOT_GROUP=buildd
SCHROOT_SESSION_ID=buster-staging-armhf-sbuild-630fd9b5-9415-4132-8645-04a9f5b67977
SCHROOT_UID=104
SCHROOT_USER=buildd
SHELL=/bin/sh
TERM=xterm
USER=buildd

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

dpkg-buildpackage: info: source package groonga
dpkg-buildpackage: info: source version 8.0.0-1
dpkg-buildpackage: info: source distribution unstable
 dpkg-source --before-build groonga-8.0.0
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.9.0-0.bpo.2-armmp armv7l
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 prctl(PR_SET_KEEPCAPS) ... found
checking for capabilities ... 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_TRANSPARENT ... found
checking for IP_BINDANY ... not found
checking for IP_BIND_ADDRESS_NO_PORT ... 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 sysconf(_SC_LEVEL1_DCACHE_LINESIZE) ... 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... armv7l-unknown-linux-gnueabihf
checking host system type... armv7l-unknown-linux-gnueabihf
checking how to print strings... printf
checking for a sed that does not truncate output... /bin/sed
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for fgrep... /bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking how to convert armv7l-unknown-linux-gnueabihf file names to armv7l-unknown-linux-gnueabihf format... func_convert_file_noop
checking how to convert armv7l-unknown-linux-gnueabihf file names to toolchain format... func_convert_file_noop
checking for /usr/bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for ar... ar
checking for archiver @FILE support... @
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for sysroot... no
checking for a working dd... /bin/dd
checking how to truncate binary pipes... /bin/dd bs=4096 count=1
checking for mt... mt
checking if mt is a manifest tool... no
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld) supports shared libraries... yes
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... no
checking whether to build static libraries... yes
checking whether make sets $(MAKE)... (cached) yes
checking for python3... no
checking for python... no
checking for python2... no
checking for ANSI C header files... (cached) yes
checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking for unistd.h... (cached) yes
checking sys/times.h usability... yes
checking sys/times.h presence... yes
checking for sys/times.h... yes
checking for stdint.h... (cached) yes
checking size of int... 4
checking size of short... 2
checking size of long... 4
checking size of void*... 4
checking size of long long... 8
checking for an ANSI C-conforming const... yes
checking whether time.h and sys/time.h may both be included... yes
checking for size_t... yes
checking for working alloca.h... yes
checking for alloca... yes
checking for working memcmp... yes
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating onigmo-config
config.status: creating sample/Makefile
config.status: creating config.h
config.status: executing depfiles commands
config.status: executing libtool commands
config.status: executing default commands
groonga 8.0.0 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 8.0.0!
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 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 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 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 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
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;
          ^
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;
            ^
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
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
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
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
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/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 regposerr.lo -MD -MP -MF .deps/regposerr.Tpo -c -o regposerr.lo regposerr.c
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 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 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 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 unicode.lo -MD -MP -MF .deps/unicode.Tpo -c ./enc/unicode.c  -fPIC -DPIC -o unicode.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -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/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 utf_32be.lo -MD -MP -MF .deps/utf_32be.Tpo -c -o utf_32be.lo `test -f './enc/utf_32be.c' || echo './'`./enc/utf_32be.c
mv -f .deps/utf_16le.Tpo .deps/utf_16le.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -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
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 euc_jp.lo -MD -MP -MF .deps/euc_jp.Tpo -c -o euc_jp.lo `test -f './enc/euc_jp.c' || echo './'`./enc/euc_jp.c
mv -f .deps/utf_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 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/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 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/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 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/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_2.lo -MD -MP -MF .deps/iso_8859_2.Tpo -c -o iso_8859_2.lo `test -f './enc/iso_8859_2.c' || echo './'`./enc/iso_8859_2.c
mv -f .deps/shift_jis.Tpo .deps/shift_jis.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -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
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_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_2.lo -MD -MP -MF .deps/iso_8859_2.Tpo -c ./enc/iso_8859_2.c  -fPIC -DPIC -o iso_8859_2.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -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
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
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
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_6.lo -MD -MP -MF .deps/iso_8859_6.Tpo -c -o iso_8859_6.lo `test -f './enc/iso_8859_6.c' || echo './'`./enc/iso_8859_6.c
mv -f .deps/iso_8859_3.Tpo .deps/iso_8859_3.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -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_5.lo -MD -MP -MF .deps/iso_8859_5.Tpo -c ./enc/iso_8859_5.c  -fPIC -DPIC -o iso_8859_5.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_6.lo -MD -MP -MF .deps/iso_8859_6.Tpo -c ./enc/iso_8859_6.c  -fPIC -DPIC -o iso_8859_6.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -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
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_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_8.lo -MD -MP -MF .deps/iso_8859_8.Tpo -c ./enc/iso_8859_8.c  -fPIC -DPIC -o iso_8859_8.o
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_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_8.Tpo .deps/iso_8859_8.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -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
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
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
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
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_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_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_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_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
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_14.lo -MD -MP -MF .deps/iso_8859_14.Tpo -c ./enc/iso_8859_14.c  -fPIC -DPIC -o iso_8859_14.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_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_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_14.Tpo .deps/iso_8859_14.Plo
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
/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
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 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
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
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
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
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_1252.lo -MD -MP -MF .deps/windows_1252.Tpo -c -o windows_1252.lo `test -f './enc/windows_1252.c' || echo './'`./enc/windows_1252.c
mv -f .deps/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_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_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_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_1253.lo -MD -MP -MF .deps/windows_1253.Tpo -c ./enc/windows_1253.c  -fPIC -DPIC -o windows_1253.o
mv -f .deps/windows_1251.Tpo .deps/windows_1251.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I.  -I. -I/usr/include -I./enc/unicode -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -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
mv -f .deps/windows_1252.Tpo .deps/windows_1252.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_1254.lo -MD -MP -MF .deps/windows_1254.Tpo -c ./enc/windows_1254.c  -fPIC -DPIC -o windows_1254.o
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
mv -f .deps/windows_1253.Tpo .deps/windows_1253.Plo
mv -f .deps/windows_1254.Tpo .deps/windows_1254.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_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");
               ^~~~~~~
listcap.c: In function 'node_callback':
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
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
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':
names.c:20:7: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     s = (ref == gn ? "*" : "");
       ^
names.c:22:25: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'OnigPosition {aka int}' [-Wformat=]
     fprintf(stderr, "(%ld-%ld) %s\n", region->beg[gn], region->end[gn], s);
                       ~~^             ~~~~~~~~~~~~~~~
                       %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
listcap.c: In function 'ex':
listcap.c:77:31: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'OnigPosition {aka int}' [-Wformat=]
       fprintf(stderr, "%d: (%ld-%ld)\n", i, region->beg[i], region->end[i]);
                             ~~^             ~~~~~~~~~~~~~~
                             %d
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: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,
 ^~~~
encode.c:157:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
     ^~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:157:14: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
              ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:159:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
     ^~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:159:14: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
              ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:161:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
     ^~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:161:14: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
              ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:163:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
     ^~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:163:14: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
              ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:165:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
     ^~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:165:14: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
              ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:167:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
     ^~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:167:14: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
              ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:169:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
     ^~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:169:14: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
              ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:171:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
     ^~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:171:14: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
              ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:173:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
     ^~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:173:14: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
              ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:175:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
     ^~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:175:14: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
              ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:177:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
     ^~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:177:14: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
              ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:183:59: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   r |= exec(ONIG_ENCODING_KOI8_R, ONIG_OPTION_IGNORECASE, "a+", "bbbaaaccc");
                                                           ^~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:183:65: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   r |= exec(ONIG_ENCODING_KOI8_R, ONIG_OPTION_IGNORECASE, "a+", "bbbaaaccc");
                                                                 ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:184:59: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   r |= exec(ONIG_ENCODING_KOI8_U, ONIG_OPTION_IGNORECASE, "a+", "bbbaaaccc");
                                                           ^~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:184:65: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   r |= exec(ONIG_ENCODING_KOI8_U, ONIG_OPTION_IGNORECASE, "a+", "bbbaaaccc");
                                                                 ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:185:59: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   r |= exec(ONIG_ENCODING_EUC_TW, ONIG_OPTION_IGNORECASE, "b*a+?c+", "bbbaaaccc");
                                                           ^~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:185:70: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   r |= exec(ONIG_ENCODING_EUC_TW, ONIG_OPTION_IGNORECASE, "b*a+?c+", "bbbaaaccc");
                                                                      ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:186:59: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   r |= exec(ONIG_ENCODING_EUC_KR, ONIG_OPTION_IGNORECASE, "a+", "bbbaaaccc");
                                                           ^~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:186:65: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   r |= exec(ONIG_ENCODING_EUC_KR, ONIG_OPTION_IGNORECASE, "a+", "bbbaaaccc");
                                                                 ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:187:59: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   r |= exec(ONIG_ENCODING_EUC_CN, ONIG_OPTION_IGNORECASE, "c+", "bbbaaaccc");
                                                           ^~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:187:65: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   r |= exec(ONIG_ENCODING_EUC_CN, ONIG_OPTION_IGNORECASE, "c+", "bbbaaaccc");
                                                                 ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:188:59: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   r |= exec(ONIG_ENCODING_BIG5,   ONIG_OPTION_IGNORECASE, "a+", "bbbaaaccc");
                                                           ^~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:188:65: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   r |= exec(ONIG_ENCODING_BIG5,   ONIG_OPTION_IGNORECASE, "a+", "bbbaaaccc");
                                                                 ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:191:12: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
            "\337", "SS");
            ^~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:191:20: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
            "\337", "SS");
                    ^~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:193:12: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
            "SS", "\337");
            ^~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:193:18: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
            "SS", "\337");
                  ^~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:195:12: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
            "SSb\337ssc", "a\337bSS\337cd");
            ^~~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:195:26: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
            "SSb\337ssc", "a\337bSS\337cd");
                          ^~~~~~~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:197:12: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
            "[a\337]{0,2}", "aSS");
            ^~~~~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:197:28: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
            "[a\337]{0,2}", "aSS");
                            ^~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:199:12: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
            "is", "iss");
            ^~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:199:18: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
            "is", "iss");
                  ^~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:202:37: warning: passing argument 4 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   ONIG_OPTION_NONE, "a+",
                                     ^~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:203:19: warning: passing argument 5 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "\000b\000a\000a\000a\000c\000c\000\000");
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:206:37: warning: passing argument 4 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   ONIG_OPTION_NONE, "a+",
                                     ^~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:207:19: warning: passing argument 5 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "b\000a\000a\000a\000a\000c\000\000\000");
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:211:19: warning: passing argument 4 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "\000b\000a\000a\000a\000c\000c\000\000",
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:212:19: warning: passing argument 5 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "x\000b\000a\000a\000a\000c\000c\000\000\000");
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:216:19: warning: passing argument 4 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "b\000a\000a\000a\000c\000c\000\000\000",
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:217:19: warning: passing argument 5 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "\000x\000b\000a\000a\000a\000c\000c\000\000");
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:221:19: warning: passing argument 4 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "\000\000\000b\000\000\000a\000\000\000a\000\000\000a\000\000\000c\000\000\000c\000\000\000\000",
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:222:19: warning: passing argument 5 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "x\000\000\000b\000\000\000a\000\000\000a\000\000\000a\000\000\000c\000\000\000c\000\000\000\000\000\000\000");
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:226:19: warning: passing argument 4 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "b\000\000\000a\000\000\000a\000\000\000a\000\000\000c\000\000\000c\000\000\000\000\000\000\000",
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:227:19: warning: passing argument 5 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "\000\000\000x\000\000\000b\000\000\000a\000\000\000a\000\000\000a\000\000\000c\000\000\000c\000\000\000\000");
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:231:19: warning: passing argument 4 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "\337", "\000S\000S\000\000");
                   ^~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:231:27: warning: passing argument 5 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "\337", "\000S\000S\000\000");
                           ^~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:235:19: warning: passing argument 4 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "SS", "\000\337\000\000");
                   ^~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:235:25: warning: passing argument 5 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "SS", "\000\337\000\000");
                         ^~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:239:19: warning: passing argument 4 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "\337", "S\000S\000\000\000");
                   ^~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:239:27: warning: passing argument 5 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "\337", "S\000S\000\000\000");
                           ^~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:243:19: warning: passing argument 4 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "SS", "\000\000\000\337\000\000\000\000");
                   ^~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:243:25: warning: passing argument 5 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "SS", "\000\000\000\337\000\000\000\000");
                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:247:19: warning: passing argument 4 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "\337", "S\000\000\000S\000\000\000\000\000\000\000");
                   ^~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:247:27: warning: passing argument 5 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                   "\337", "S\000\000\000S\000\000\000\000\000\000\000");
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:250:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\000[\000[\000:\000a\000l\000n\000u\000m\000:\000]\000]\000+\000\000",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:251:12: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
            "\000#\002\120\000a\000Z\012\077\012\076\012\075\000\000");
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:256:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\000\\\000d\000+\000\000",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:257:12: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
            "\0003\0001\377\020\377\031\377\032\000\000");
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:260:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "(Aa\\d)+", "BaA5Aa0234");
     ^~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:260:17: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "(Aa\\d)+", "BaA5Aa0234");
                 ^~~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:264:5: warning: passing argument 4 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "^\\P{Hiragana}\\p{^Hiragana}(\\p{Hiragana}+)$",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:265:5: warning: passing argument 5 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\060\100\060\240\060\101\060\102\060\226\060\237\000\000");
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:269:5: warning: passing argument 4 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\000[\000\337\000]\000\000", "\000S\000S\000\000");
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:269:35: warning: passing argument 5 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\000[\000\337\000]\000\000", "\000S\000S\000\000");
                                   ^~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:273:5: warning: passing argument 4 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\000[\000\337\000]\000\000", "\000s\000S\000\000");
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:273:35: warning: passing argument 5 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\000[\000\337\000]\000\000", "\000s\000S\000\000");
                                   ^~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:277:5: warning: passing argument 4 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\000^\000[\000\001\000-\377\375\000]\000$\000\000",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:278:5: warning: passing argument 5 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\000s\000S\000\000");
     ^~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:282:5: warning: passing argument 4 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\000S\000S\000\000",
     ^~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:283:5: warning: passing argument 5 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\000S\000T\000\337\000\000");
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:287:5: warning: passing argument 4 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\000S\000T\000S\000S\000\000",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
encode.c:288:5: warning: passing argument 5 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\000S\000t\000s\000S\000\000");
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
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/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)
 ^~~~
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 names names.o ../libonigmo.la 
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 posix posix.o ../libonigmo.la 
mv -f .deps/crnl.Tpo .deps/crnl.Po
/bin/bash ../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -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 
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
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 sql sql.o ../libonigmo.la 
/bin/bash ../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -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
/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 
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
/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 sql sql.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 syntax syntax.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 encode encode.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 scan scan.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 encode encode.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 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 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 ../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
/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/compar.c  -fPIC -DPIC -o ../mruby-source/src/.libs/compar.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/crc.c  -fPIC -DPIC -o ../mruby-source/src/.libs/crc.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -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
/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/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
../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;
                          ^
../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
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
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)
 ^~~~~~~~~~~~
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
/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
/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
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
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;
                    ^
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)
 ^~~~~~~~~~~~
/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
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
/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
/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/object.c  -fPIC -DPIC -o ../mruby-source/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/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
/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
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/state.lo ../mruby-source/src/state.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/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/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/symbol.lo ../mruby-source/src/symbol.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
../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/variable.lo ../mruby-source/src/variable.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -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
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)
 ^~~~~~~~~~~~
/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/variable.c  -fPIC -DPIC -o ../mruby-source/src/.libs/variable.o
In file included from ./../mruby-source/include/mruby/proc.h:73:0,
                 from ../mruby-source/src/variable.c:10:
../mruby-source/src/variable.c: In function 'kh_alloc_iv':
./../mruby-source/include/mruby/khash.h:104:15: warning: cast increases required alignment of target type [-Wcast-align]
     h->keys = (khkey_t *)p;                                             \
               ^
../mruby-source/src/variable.c:292:1: note: in expansion of macro 'KHASH_DEFINE'
 KHASH_DEFINE(iv, mrb_sym, mrb_value, TRUE, kh_int_hash_func, kh_int_hash_equal)
 ^~~~~~~~~~~~
./../mruby-source/include/mruby/khash.h:105:27: warning: cast increases required alignment of target type [-Wcast-align]
     h->vals = kh_is_map ? (khval_t *)(p+sizeof(khkey_t)*sz) : NULL;     \
                           ^
../mruby-source/src/variable.c:292:1: note: in expansion of macro 'KHASH_DEFINE'
 KHASH_DEFINE(iv, mrb_sym, mrb_value, TRUE, kh_int_hash_func, kh_int_hash_equal)
 ^~~~~~~~~~~~
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -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
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
/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
/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-struct/src/struct.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-struct/src/.libs/struct.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-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
/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-numeric-ext/src/numeric_ext.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-numeric-ext/src/.libs/numeric_ext.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -DHAVE_ONIGMO_H -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -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
/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
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-proc-ext/src/proc.lo ../mruby-source/mrbgems/mruby-proc-ext/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/mrbgems/mruby-range-ext/src/range.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-range-ext/src/.libs/range.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-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-proc-ext/src/proc.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-proc-ext/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/mrbgems/mruby-symbol-ext/src/symbol.lo ../mruby-source/mrbgems/mruby-symbol-ext/src/symbol.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-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-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
/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
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-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
/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
/home/horimoto/work/release/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y: In function 'new_int':
/home/horimoto/work/release/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/horimoto/work/release/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:159:40: note: in definition of macro 'list3'
/home/horimoto/work/release/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y: In function 'new_float':
/home/horimoto/work/release/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/horimoto/work/release/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:138:35: note: in definition of macro 'cons'
/home/horimoto/work/release/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y: In function 'new_str':
/home/horimoto/work/release/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/horimoto/work/release/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:138:35: note: in definition of macro 'cons'
/home/horimoto/work/release/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:740:32: note: in expansion of macro 'cons'
/home/horimoto/work/release/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y: In function 'new_xstr':
/home/horimoto/work/release/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/horimoto/work/release/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:138:35: note: in definition of macro 'cons'
/home/horimoto/work/release/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:754:33: note: in expansion of macro 'cons'
/home/horimoto/work/release/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y: In function 'new_regx':
/home/horimoto/work/release/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/horimoto/work/release/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:138:35: note: in definition of macro 'cons'
/home/horimoto/work/release/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:775:33: note: in expansion of macro 'cons'
/home/horimoto/work/release/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/horimoto/work/release/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:138:35: note: in definition of macro 'cons'
/home/horimoto/work/release/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:775:33: note: in expansion of macro 'cons'
/home/horimoto/work/release/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:775:49: note: in expansion of macro 'cons'
/home/horimoto/work/release/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/horimoto/work/release/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:138:35: note: in definition of macro 'cons'
/home/horimoto/work/release/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:775:33: note: in expansion of macro 'cons'
/home/horimoto/work/release/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-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
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);
   ^~~~~~~~~~~~~~~
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_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
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
/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_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
/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-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-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-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));
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                                                                                                                                                                                                                                                                                     
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 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 file-impl.cpp  -fPIC -DPIC -o .libs/file-impl.o
libtool: compile:  g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I../.. -I../../include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -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 id-cursor.cpp  -fPIC -DPIC -o .libs/id-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 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
/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
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
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
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]);
         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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 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]);
         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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_bulk.c  -fPIC -DPIC -o .libs/mrb_bulk.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_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_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_cache.c  -fPIC -DPIC -o .libs/mrb_cache.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:1469: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:1470: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:1471: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:1472: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:1473: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:1474: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:1475: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1476: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:1477: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
/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_input.c  -fPIC -DPIC -o .libs/mrb_command_input.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_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
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_config.c  -fPIC -DPIC -o .libs/mrb_config.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_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_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
/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_fixed_size_column.c  -fPIC -DPIC -o .libs/mrb_fixed_size_column.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-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
/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_indexable.c  -fPIC -DPIC -o .libs/mrb_indexable.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_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);
              ^
/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
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:1496: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_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
/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_object_flags.c  -fPIC -DPIC -o .libs/mrb_object_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_operator.c  -fPIC -DPIC -o .libs/mrb_operator.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_options.lo mrb_options.c
mrb_object.c: In function 'object_hash':
mrb_object.c:161:37: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
   return mrb_fixnum_value((mrb_int)((uint64_t)object));
                                     ^
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-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
/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_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
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:1478: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
/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_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
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
/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_cursor_flags.c  -fPIC -DPIC -o .libs/mrb_table_cursor_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_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
/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_group_result.c  -fPIC -DPIC -o .libs/mrb_table_group_result.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_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_dump.c  -fPIC -DPIC -o .libs/proc_dump.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-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_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
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:1477: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:1472: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:1472: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:1472: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:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
proc_fuzzy_search.c:355:29: note: in expansion of macro 'GRN_UINT32_VALUE'
             max_expansion = GRN_UINT32_VALUE(value);
                             ^~~~~~~~~~~~~~~~
proc_dump.c: In function 'dump_index_column_sources':
proc_dump.c: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:1497: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:1497: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:1497: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);
              ^~~~~~~~~~~~~~~~
/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_table':
../../include/groonga/groonga.h:1497: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:1478: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:420: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:1478: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:471: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:1497: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:1497: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);
                        ^~~~~~~~~~~~~~~~
proc_in_records.c: In function 'selector_in_records':
../../include/groonga/groonga.h:1497: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:1497: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);
                        ^~~~~~~~~~~~~~~~
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
/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
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
/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
/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
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_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:1496: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);
                 ^~~~~~~~~~~~~~~~~~~
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_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_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_select.lo proc_select.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_snippet.lo proc_snippet.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_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_schema.c:19:
proc_schema.c: In function 'command_schema_output_tokenizers':
../../include/groonga/groonga.h:1496: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:1496: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:1496: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:1497: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:1497: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:1496: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:1496: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:1496: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_select.c  -fPIC -DPIC -o .libs/proc_select.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_snippet.c  -fPIC -DPIC -o .libs/proc_snippet.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_table.c  -fPIC -DPIC -o .libs/proc_table.o
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:1472: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:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
proc_snippet.c:138:27: note: in expansion of macro 'GRN_UINT32_VALUE'
           max_n_results = GRN_UINT32_VALUE(value);
                           ^~~~~~~~~~~~~~~~
proc_snippet.c: In function 'func_snippet_html':
../../include/groonga/groonga.h:1478: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:1478: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: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:1497: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:508:22: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     grn_obj *table = GRN_PTR_VALUE_AT(&tables, i);
                      ^~~~~~~~~~~~~~~~
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:1139: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:1151: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc_select.c:1631:12: note: in expansion of macro 'GRN_INT32_VALUE'
     return GRN_INT32_VALUE(factor_object);
            ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc_select.c:1639: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:2195: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:2245:13: warning: cast increases required alignment of target type [-Wcast-align]
             (grn_slice_data *)grn_hash_get_value_(ctx, data->slices,
             ^
proc_select.c:2265: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:2455: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:1496: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:2559:10: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
     id = GRN_RECORD_VALUE_AT(&tsorted_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_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:1472: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_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.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_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:1469: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:1471: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:1473: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:1470: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:1472: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:1474: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:1475: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1476: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:1480: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:1488: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:1490: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:1489: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:1491: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)
         ^
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)
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
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_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 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 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 cache.c  -fPIC -DPIC -o .libs/cache.o
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-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
alloc.c: In function 'grn_ctx_alloc':
alloc.c:419:16: warning: cast increases required alignment of target type [-Wcast-align]
       header = (int32_t *)((byte *)mi->map + mi->nref);
                ^
com.c: In function 'grn_msg_open':
com.c:132: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:153:18: warning: cast increases required alignment of target type [-Wcast-align]
   grn_msg *req = (grn_msg *)query, *msg = NULL;
                  ^
com.c:154: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:165: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:174: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:185:16: warning: cast increases required alignment of target type [-Wcast-align]
   grn_msg *m = (grn_msg *)msg;
                ^
/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
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;
                             ^
com.c: In function 'grn_com_receiver':
com.c:541: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_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
/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
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 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:176:16: warning: cast increases required alignment of target type [-Wcast-align]
   grn_obj *v = (grn_obj *)(GRN_BULK_HEAD(&loader->values));
                ^
ctx.c:177:17: warning: cast increases required alignment of target type [-Wcast-align]
   grn_obj *ve = (grn_obj *)(GRN_BULK_CURR(&loader->values));
                 ^
ctx.c:178: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:458: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
ctx.c:921:10: note: in expansion of macro 'GRN_INT32_VALUE'
     ct = GRN_INT32_VALUE(var);
          ^~~~~~~~~~~~~~~
ctx.c: In function 'grn_ctx_use':
ctx.c:1546: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 dump.c  -fPIC -DPIC -o .libs/dump.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 db.c  -fPIC -DPIC -o .libs/db.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:970: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:1299: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:1315:31: warning: cast increases required alignment of target type [-Wcast-align]
           scorebuf[count] = *((double *)psubrec);
                               ^
db.c:1319: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:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:1434: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:1491: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:1900:17: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
     source_id = GRN_UINT32_VALUE_AT(&source_ids, i);
                 ^~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1497: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:1922: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:1496: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:1943:37: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
               grn_id reference_id = GRN_RECORD_VALUE_AT(&value, i);
                                     ^~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1497: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:1991: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:2375: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:2377:5: note: in expansion of macro 'GRN_RSET_SUBRECS_COPY'
     GRN_RSET_SUBRECS_COPY(subrecs,size,n,c2);
     ^~~~~~~~~~~~~~~~~~~~~
db.c:2381: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:2394: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:2395: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:2400: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:2403: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:2408: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:2434: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))
                                                ^
/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
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:1491: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:3145: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:1496: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:3201: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:1497: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:3426: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:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:3662: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:3815:21: warning: cast increases required alignment of target type [-Wcast-align]
               id_ = (grn_id *)_grn_table_key(ctx, table, id, &key_size);
                     ^
db.c:3847: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:3922:29: warning: cast increases required alignment of target type [-Wcast-align]
               grn_id id = *((grn_id *)element);
                             ^
db.c:3964: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:4056:21: warning: cast increases required alignment of target type [-Wcast-align]
               id_ = (grn_id *)_grn_table_key(ctx, table, id, &key_size);
                     ^
db.c:4097: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:4257:15: warning: cast increases required alignment of target type [-Wcast-align]
         ids = (grn_id *)GRN_BULK_HEAD(key_buffer);
               ^
db.c: In function 'grn_uvector_get_element':
db.c:5516:21: warning: cast increases required alignment of target type [-Wcast-align]
     entries_start = (const weight_uvector_entry *)GRN_BULK_HEAD(uvector);
                     ^
db.c:5517:19: warning: cast increases required alignment of target type [-Wcast-align]
     entries_end = (const weight_uvector_entry *)GRN_BULK_CURR(uvector);
                   ^
db.c:5530:17: warning: cast increases required alignment of target type [-Wcast-align]
     ids_start = (const grn_id *)GRN_BULK_HEAD(uvector);
                 ^
db.c:5531: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:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6146:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6213:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();
     ^~~~~~~~~~
db.c: In function 'grn_obj_cast_record':
../include/groonga/groonga.h:1477: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:1383:26: note: in definition of macro 'GRN_RECORD_SET'
   grn_id _val = (grn_id)(val);\
                          ^~~
db.c:6323:31: note: in expansion of macro 'GRN_RECORD_VALUE'
     GRN_RECORD_SET(ctx, dest, GRN_RECORD_VALUE(src));
                               ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1477: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:7: note: in expansion of macro 'GRN_RECORD_VALUE'
   if (GRN_RECORD_VALUE(src) == GRN_ID_NIL) {
       ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1477: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:1383:26: note: in definition of macro 'GRN_RECORD_SET'
   grn_id _val = (grn_id)(val);\
                          ^~~
db.c:6349:31: note: in expansion of macro 'GRN_RECORD_VALUE'
     GRN_RECORD_SET(ctx, dest, GRN_RECORD_VALUE(src));
                               ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6353: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:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6146:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6264:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6373:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT8_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6146:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6264:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6376:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT8_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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1342:40: note: in definition of macro 'GRN_BOOL_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6222:5: note: in expansion of macro 'NUM2BOOL'
     tobool(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6222:23: note: in expansion of macro 'GRN_INT16_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6379:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1346:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6225:29: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6379:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6228:30: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6379:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6231:30: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6379:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6234:31: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6379:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6237:30: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6379:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6240:31: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6379:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6243:5: note: in expansion of macro 'NUM2TIME'
     totime(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6243:23: note: in expansion of macro 'GRN_INT16_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6379:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6246:30: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6379:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6249:31: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6379:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1378:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6252:5: note: in expansion of macro 'NUM2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6252:24: note: in expansion of macro 'GRN_INT16_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6379:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6257:23: note: in expansion of macro 'GRN_INT16_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6379:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6146:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6264:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6379: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1342:40: note: in definition of macro 'GRN_BOOL_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6222:5: note: in expansion of macro 'NUM2BOOL'
     tobool(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6222:23: note: in expansion of macro 'GRN_UINT16_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6382: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1346:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6225:29: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6382: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1350:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6228:30: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6382: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6231:30: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6382: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1358:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6234:31: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6382: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6237:30: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6382: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6240:31: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6382: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6243:5: note: in expansion of macro 'NUM2TIME'
     totime(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6243:23: note: in expansion of macro 'GRN_UINT16_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6382: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6246:30: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6382: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6249:31: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6382: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1378:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6252:5: note: in expansion of macro 'NUM2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6252:24: note: in expansion of macro 'GRN_UINT16_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6382: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6257:23: note: in expansion of macro 'GRN_UINT16_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6382:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6146:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6264:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6382:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1342:40: note: in definition of macro 'GRN_BOOL_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6222:5: note: in expansion of macro 'NUM2BOOL'
     tobool(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6222:23: note: in expansion of macro 'GRN_INT32_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6385:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1346:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6225:29: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6385:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6228:30: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6385:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6231:30: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6385:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6234:31: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6385:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6237:30: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6385:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6240:31: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6385:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6243:5: note: in expansion of macro 'NUM2TIME'
     totime(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6243:23: note: in expansion of macro 'GRN_INT32_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6385:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6246:30: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6385:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6249:31: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6385:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1471: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:1378:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6252:5: note: in expansion of macro 'NUM2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6252:24: note: in expansion of macro 'GRN_INT32_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6385:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6257:23: note: in expansion of macro 'GRN_INT32_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6385:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6146:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6264:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6385:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1342:40: note: in definition of macro 'GRN_BOOL_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6222:5: note: in expansion of macro 'NUM2BOOL'
     tobool(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6222:23: note: in expansion of macro 'GRN_UINT32_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6388:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1346:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6225:29: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6388:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1350:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6228:30: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6388:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6231:30: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6388:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1358:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6234:31: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6388:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6237:30: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6388:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6240:31: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6388:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6243:5: note: in expansion of macro 'NUM2TIME'
     totime(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6243:23: note: in expansion of macro 'GRN_UINT32_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6388:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6246:30: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6388:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6249:31: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6388:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1378:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6252:5: note: in expansion of macro 'NUM2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6252:24: note: in expansion of macro 'GRN_UINT32_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6388:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6257:23: note: in expansion of macro 'GRN_UINT32_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6388:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6146:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6264:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6388:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1342:40: note: in definition of macro 'GRN_BOOL_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6222:5: note: in expansion of macro 'NUM2BOOL'
     tobool(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6222:23: note: in expansion of macro 'GRN_INT64_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6391:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1346:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6225:29: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6391:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6228:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6391:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6231:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6391:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6234:31: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6391:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6237:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6391:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6240:31: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6391:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6243:5: note: in expansion of macro 'NUM2TIME'
     totime(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6243:23: note: in expansion of macro 'GRN_INT64_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6391:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6246:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6391:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6249:31: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6391:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1378:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6252:5: note: in expansion of macro 'NUM2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6252:24: note: in expansion of macro 'GRN_INT64_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6391:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6257:23: note: in expansion of macro 'GRN_INT64_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6391:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6146:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6264:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6391:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1342:40: note: in definition of macro 'GRN_BOOL_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6222:5: note: in expansion of macro 'NUM2BOOL'
     tobool(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6222:23: note: in expansion of macro 'GRN_INT64_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6394:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6394:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1346:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6225:29: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6394:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6394:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6228:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6394:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6394:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6231:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6394:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6394:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6234:31: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6394:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6394:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6237:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6394:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6394:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6240:31: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6394:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6394:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6243:5: note: in expansion of macro 'TIME2TIME'
     totime(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6243:23: note: in expansion of macro 'GRN_INT64_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6394:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6394:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6246:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6394:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6394:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6249:31: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6394:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6394:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1378:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6252:5: note: in expansion of macro 'TIME2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6252:24: note: in expansion of macro 'GRN_INT64_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6394:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6394:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1473: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:6257:23: note: in expansion of macro 'GRN_INT64_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6394:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6394:14: note: in expansion of macro 'GRN_TIME_VALUE'
     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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6146:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6264:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6394:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1342:40: note: in definition of macro 'GRN_BOOL_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6222:5: note: in expansion of macro 'NUM2BOOL'
     tobool(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6222:23: note: in expansion of macro 'GRN_UINT64_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6397:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1346:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6225:29: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6397:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1350:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6228:30: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6397:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1354:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6231:30: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6397:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1358:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6234:31: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6397:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1362:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6237:30: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6397:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6240:31: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6397:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6243:5: note: in expansion of macro 'NUM2TIME'
     totime(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6243:23: note: in expansion of macro 'GRN_UINT64_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6397:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6246:30: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6397:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6249:31: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6397:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1474: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:1378:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6252:5: note: in expansion of macro 'NUM2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6252:24: note: in expansion of macro 'GRN_UINT64_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6397:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1474: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:6257:23: note: in expansion of macro 'GRN_UINT64_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6397: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6146:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6264:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6397:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6290:19: note: in definition of macro 'FLOAT2BOOL'
   double value_ = value;\
                   ^~~~~
db.c:6222:23: note: in expansion of macro 'GRN_FLOAT_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6400: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:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1346:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6225:29: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6400:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1350:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6228:30: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6400:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6231:30: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6400:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1358:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6234:31: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6400:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6237:30: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6400:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1366:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6240:31: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6400:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6299:26: note: in definition of macro 'FLOAT2TIME'
   int64_t usec = llround(value * GRN_TIME_USEC_PER_SEC);\
                          ^~~~~
db.c:6243:23: note: in expansion of macro 'GRN_FLOAT_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6400: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:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6246:30: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6400:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1374:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6249:31: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6400:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1475: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:1378:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6252:5: note: in expansion of macro 'FLOAT2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6252:24: note: in expansion of macro 'GRN_FLOAT_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6400:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6257:23: note: in expansion of macro 'GRN_FLOAT_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6400:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6146:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6264:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6400:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6146:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6550:7: note: in expansion of macro 'SRC2RECORD'
       SRC2RECORD();
       ^~~~~~~~~~
../include/groonga/groonga.h:1480:25: warning: cast increases required alignment of target type [-Wcast-align]
   grn_geo_point *_val = (grn_geo_point *)GRN_BULK_HEAD(obj);\
                         ^
db.c:6561: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:6659:33: warning: cast increases required alignment of target type [-Wcast-align]
         value = (const char *)&((grn_rset_recinfo *)value)->score;
                                 ^
db.c:6665:33: warning: cast increases required alignment of target type [-Wcast-align]
         value = (const char *)&((grn_rset_recinfo *)value)->n_subrecs;
                                 ^
db.c:6673:51: warning: cast increases required alignment of target type [-Wcast-align]
                                                   (grn_rset_recinfo *)value,
                                                   ^
db.c:6682:51: warning: cast increases required alignment of target type [-Wcast-align]
                                                   (grn_rset_recinfo *)value,
                                                   ^
db.c:6691:51: warning: cast increases required alignment of target type [-Wcast-align]
                                                   (grn_rset_recinfo *)value,
                                                   ^
db.c:6700:51: warning: cast increases required alignment of target type [-Wcast-align]
                                                   (grn_rset_recinfo *)value,
                                                   ^
db.c:6720: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:6782: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:6791: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:6800: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:6811: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:6822: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:6833: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:6852: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:1496: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:6862: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:6941:18: warning: cast increases required alignment of target type [-Wcast-align]
             ri = (grn_rset_recinfo *)GRN_BULK_HEAD(&buf);
                  ^
db.c:6945: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:1475: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(value);
                             ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6953:29: note: in expansion of macro 'GRN_FLOAT_VALUE'
                 ri->score = GRN_FLOAT_VALUE(&buf);
                             ^~~~~~~~~~~~~~~
db.c:6963:34: warning: cast increases required alignment of target type [-Wcast-align]
           grn_rset_recinfo *ri = (grn_rset_recinfo *)GRN_BULK_HEAD(&buf);
                                  ^
db.c:6970: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6972: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:1473: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:6978:40: note: in expansion of macro 'GRN_INT64_VALUE'
                                        GRN_INT64_VALUE(&value_int64));
                                        ^~~~~~~~~~~~~~~
db.c:6987: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6989: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:1473: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:6995:40: note: in expansion of macro 'GRN_INT64_VALUE'
                                        GRN_INT64_VALUE(&value_int64));
                                        ^~~~~~~~~~~~~~~
db.c:7004: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:7006: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:1473: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:7012:40: note: in expansion of macro 'GRN_INT64_VALUE'
                                        GRN_INT64_VALUE(&value_int64));
                                        ^~~~~~~~~~~~~~~
db.c:7021: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:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:7023: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:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:7029:40: note: in expansion of macro 'GRN_FLOAT_VALUE'
                                        GRN_FLOAT_VALUE(&value_float));
                                        ^~~~~~~~~~~~~~~
db.c: In function 'grn_obj_set_value_column_var_size_vector_uvector':
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:7433: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 ts.c  -fPIC -DPIC -o .libs/ts.o
db.c: In function 'grn_token_filters_pack':
../include/groonga/groonga.h:1497: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:8402: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:8660: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:8742: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:1497: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:8846: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:1497: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:9906: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:10424: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:1497: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:10719: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:1478:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
db.c:10810: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:1478:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
db.c:10997:30: note: in expansion of macro 'GRN_PTR_VALUE'
           grn_obj_close(ctx, GRN_PTR_VALUE(obj));
                              ^~~~~~~~~~~~~
../include/groonga/groonga.h:1497: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:11007:30: note: in expansion of macro 'GRN_PTR_VALUE_AT'
           grn_obj *element = GRN_PTR_VALUE_AT(obj, i);
                              ^~~~~~~~~~~~~~~~
db.c: In function 'compare_reference':
db.c:11732:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11790:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int16_t);
       ^~~~~~
db.c:11733:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11790:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int16_t);
       ^~~~~~
db.c:11732:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11793:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int32_t);
       ^~~~~~
db.c:11733:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11793:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int32_t);
       ^~~~~~
db.c:11732:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11796:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int64_t);
       ^~~~~~
db.c:11733:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11796:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int64_t);
       ^~~~~~
db.c:11732:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11802:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint16_t);
       ^~~~~~
db.c:11733:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11802:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint16_t);
       ^~~~~~
db.c:11732:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11805:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint32_t);
       ^~~~~~
db.c:11733:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11805:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint32_t);
       ^~~~~~
db.c:11732:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11808:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint64_t);
       ^~~~~~
db.c:11733:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11808:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint64_t);
       ^~~~~~
db.c:11813:24: warning: cast increases required alignment of target type [-Wcast-align]
           float va = *((float *)(ap));
                        ^
db.c:11814:24: warning: cast increases required alignment of target type [-Wcast-align]
           float vb = *((float *)(bp));
                        ^
db.c:11826:25: warning: cast increases required alignment of target type [-Wcast-align]
           double va = *((double *)(ap));
                         ^
db.c:11827:25: warning: cast increases required alignment of target type [-Wcast-align]
           double vb = *((double *)(bp));
                         ^
db.c: In function 'compare_value':
db.c:11732:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:12026:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int16_t);
       ^~~~~~
db.c:11733:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:12026:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int16_t);
       ^~~~~~
db.c:11732:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:12029:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int32_t);
       ^~~~~~
db.c:11733:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:12029:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int32_t);
       ^~~~~~
db.c:11732:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:12032:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int64_t);
       ^~~~~~
db.c:11733:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:12032:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int64_t);
       ^~~~~~
db.c:11732:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:12038:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint16_t);
       ^~~~~~
db.c:11733:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:12038:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint16_t);
       ^~~~~~
db.c:11732:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:12041:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint32_t);
       ^~~~~~
db.c:11733:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:12041:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint32_t);
       ^~~~~~
db.c:11732:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:12044:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint64_t);
       ^~~~~~
db.c:11733:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:12044:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint64_t);
       ^~~~~~
db.c:12049:24: warning: cast increases required alignment of target type [-Wcast-align]
           float va = *((float *)(ap));
                        ^
db.c:12050:24: warning: cast increases required alignment of target type [-Wcast-align]
           float vb = *((float *)(bp));
                        ^
db.c:12062:25: warning: cast increases required alignment of target type [-Wcast-align]
           double va = *((double *)(ap));
                         ^
db.c:12063:25: warning: cast increases required alignment of target type [-Wcast-align]
           double vb = *((double *)(bp));
                         ^
db.c: In function 'grn_ctx_push_temporary_open_space':
db.c:14029:12: warning: cast increases required alignment of target type [-Wcast-align]
   space = ((grn_obj *)GRN_BULK_CURR(stack)) - 1;
            ^
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-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
db.c: In function 'grn_ctx_pop_temporary_open_space':
db.c:14059: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:1497: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:14089:26: note: in expansion of macro 'GRN_PTR_VALUE_AT'
       grn_obj *element = GRN_PTR_VALUE_AT(space, i);
                          ^~~~~~~~~~~~~~~~
db.c:14100:14: warning: cast increases required alignment of target type [-Wcast-align]
     space = ((grn_obj *)GRN_BULK_CURR(stack)) - 1;
              ^
/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
/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
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
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
/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
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':
../include/groonga/groonga.h:1547:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(type *)(GRN_BULK_CURR(obj));\
              ^
../include/groonga/groonga.h:1564: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);
     ^~~~~~~~~~~
/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
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);
                          ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:766,
                 from expr.c:18:
../include/groonga/groonga.h:1471: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:1147:9: note: in expansion of macro 'APPEND_UNARY_MINUS_OP'
         APPEND_UNARY_MINUS_OP(e);
         ^~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472: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:1147: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370: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:1147:9: note: in expansion of macro 'APPEND_UNARY_MINUS_OP'
         APPEND_UNARY_MINUS_OP(e);
         ^~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1475: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:1378: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:1147:9: note: in expansion of macro 'APPEND_UNARY_MINUS_OP'
         APPEND_UNARY_MINUS_OP(e);
         ^~~~~~~~~~~~~~~~~~~~~
expr.c: In function 'grn_expr_exec_get_member_vector':
../include/groonga/groonga.h:1478:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2518:12: note: in expansion of macro 'GRN_PTR_VALUE'
   column = GRN_PTR_VALUE(column_and_record_id);
            ^~~~~~~~~~~~~
../include/groonga/groonga.h:1497: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:2519: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:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2523:7: note: in expansion of macro 'GRN_UINT32_VALUE'
   i = GRN_UINT32_VALUE(index);
       ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1488: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:1354:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:2548:30: note: in expansion of macro 'GRN_INT16_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(INT16);
         ^~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1489: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:1358:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:2548:30: note: in expansion of macro 'GRN_UINT16_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(UINT16);
         ^~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1490: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:1362:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:2548:30: note: in expansion of macro 'GRN_INT32_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(INT32);
         ^~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1491: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:1366:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:2548:30: note: in expansion of macro 'GRN_UINT32_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(UINT32);
         ^~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1492: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:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:2548:30: note: in expansion of macro 'GRN_INT64_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(INT64);
         ^~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1493: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:1374:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:2548:30: note: in expansion of macro 'GRN_UINT64_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(UINT64);
         ^~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1494: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:1378:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:2548:30: note: in expansion of macro 'GRN_FLOAT_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(FLOAT);
         ^~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1492: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:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
../include/groonga/groonga.h:1495:27: note: in expansion of macro 'GRN_INT64_VALUE_AT'
 #define GRN_TIME_VALUE_AT GRN_INT64_VALUE_AT
                           ^~~~~~~~~~~~~~~~~~
expr.c:2548:30: note: in expansion of macro 'GRN_TIME_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(TIME);
         ^~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1496: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:1383:26: note: in definition of macro 'GRN_RECORD_SET'
   grn_id _val = (grn_id)(val);\
                          ^~~
expr.c:2548:30: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
                              GRN_ ## type ## _VALUE_AT(&values, i));    \
                              ^~~~
expr.c:2585:9: note: in expansion of macro 'GET_UVECTOR_ELEMENT_AS'
         GET_UVECTOR_ELEMENT_AS(RECORD);
         ^~~~~~~~~~~~~~~~~~~~~~
expr.c: In function 'grn_expr_exec':
../include/groonga/groonga.h:1477: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:1521:38: note: in definition of macro 'GRN_UINT32_PUT'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:2739:38: note: in expansion of macro 'GRN_RECORD_VALUE'
             GRN_UINT32_PUT(ctx, res, GRN_RECORD_VALUE(rec));
                                      ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:2801:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           obj = GRN_OBJ_RESOLVE(ctx, obj);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:2801:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           obj = GRN_OBJ_RESOLVE(ctx, obj);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:2816:24: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           value_type = GRN_OBJ_RESOLVE(ctx, value_type);
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:2816:24: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           value_type = GRN_OBJ_RESOLVE(ctx, value_type);
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:2818:22: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           key_type = GRN_OBJ_RESOLVE(ctx, key_type);
                      ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:2818:22: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           key_type = GRN_OBJ_RESOLVE(ctx, key_type);
                      ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:2820:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           flags = GRN_OBJ_RESOLVE(ctx, flags);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:2820:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           flags = GRN_OBJ_RESOLVE(ctx, flags);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:2822:18: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           name = GRN_OBJ_RESOLVE(ctx, name);
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:2822:18: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           name = GRN_OBJ_RESOLVE(ctx, name);
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2824:40: note: in expansion of macro 'GRN_UINT32_VALUE'
                                  NULL, GRN_UINT32_VALUE(flags),
                                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:2835:18: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           name = GRN_OBJ_RESOLVE(ctx, name);
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:2835:18: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           name = GRN_OBJ_RESOLVE(ctx, name);
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:2837:18: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           expr = GRN_OBJ_RESOLVE(ctx, expr);
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:2837:18: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           expr = GRN_OBJ_RESOLVE(ctx, expr);
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2840: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:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2843:72: note: in expansion of macro 'GRN_UINT32_VALUE'
             res = grn_expr_get_var_by_offset(ctx, expr, (unsigned int) GRN_UINT32_VALUE(name));
                                                                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2846: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:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2849: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:1478: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:2873:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           value = GRN_OBJ_RESOLVE(ctx, value);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:2873:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           value = GRN_OBJ_RESOLVE(ctx, value);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2878:28: note: in expansion of macro 'GRN_PTR_VALUE'
             grn_obj *col = GRN_PTR_VALUE(var);
                            ^~~~~~~~~~~~~
expr.c:2879:27: warning: cast increases required alignment of target type [-Wcast-align]
             grn_id rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));
                           ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:766,
                 from expr.c:18:
../include/groonga/groonga.h:1478:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2467:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2468: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:2889: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:1478: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:2472:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1478: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:2472:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1821:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1835:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1358:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1849:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1863:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1877:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1891:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1894:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1905:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1919:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475: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:1378:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1770:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2889:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1478:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2467:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2468: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:2903: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:1478: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:2472:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1478: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:2472:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1821:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SLASH'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1835:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1358:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SLASH'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1849:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SLASH'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1863:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SLASH'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1877:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SLASH'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1891:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SLASH'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1894:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1905:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SLASH'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1919:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475: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:1378:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1770:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_SLASH'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2903:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1478:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2467:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2468: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:2917: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:1478: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:2472:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1478: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:2472:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1821:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MOD'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1835:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1358:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MOD'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1849:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MOD'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1863:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MOD'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1877:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MOD'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1891:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MOD'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1894:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1905:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MOD'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1919:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475: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:1378:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1770:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_MOD'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2917: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:1478:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2467:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2468: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:2931: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:1478: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:2472:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1478: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:2472:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1821:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1835:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1358:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1849:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1863:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1877:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1891:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1894:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1905:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1919:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475: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:1378:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1770:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2931:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1478:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2467:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2468: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:2945: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:1478: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:2472:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1478: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:2472:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1821:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1835:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1358:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1849:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1863:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1877:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1891:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1894:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1905:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1919:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475: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:1378:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1770:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2945:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1478:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2467:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2468: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:2959: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:1478: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:2472:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1478: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:2472:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1821:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1835:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1358:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1849:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1863:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1877:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1891:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1894:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1905:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1919:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475: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:1378:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1770:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2959:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1478:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2467:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2468: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:2973: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:1478: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:2472:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1478: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:2472:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1821:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1835:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1358:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1849:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1863:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1877:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1891:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1894:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1905:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1919:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475: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:1378:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1770:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2973:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1478:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2467:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2468: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:2987: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:1478: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:2472:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1478: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:2472:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1821:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER16_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1835:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1358:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER16_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1849:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER32_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1863:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER32_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1877:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER64_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1891:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER64_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1894:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1905:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER64_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1919:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475: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:1378:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1770:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2987:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1478:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2467:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2468: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:3002: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:1478: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:2472:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1478: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:2472:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1821:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1835:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1358:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1849:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1863:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1877:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1891:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1894:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1905:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1919:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475: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:1378:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1770:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3002:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1478:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2467:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2468: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:3016: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:1478: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:2472:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1478: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:2472:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1821:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1835:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1358:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1849:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1863:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1877:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1891:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1894:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1905:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1919:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475: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:1378:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1770:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3016:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1478:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2467:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2468: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:3030: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:1478: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:2472:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1478: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:2472:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1821:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1835:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1358:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1849:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1863:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1877:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1891:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1894:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1905:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1919:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475: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:1378:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1770:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2487:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3030:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:3087:41: note: in expansion of macro 'GRN_RECORD_VALUE'
             grn_obj_get_value(ctx, col, GRN_RECORD_VALUE(rec), res);
                                         ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:3099:16: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           op = GRN_OBJ_RESOLVE(ctx, op);
                ^~~~~~~~~~~~~~~
/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:1478: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:3099:16: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           op = GRN_OBJ_RESOLVE(ctx, op);
                ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:3101:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:3101:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:3103:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           query = GRN_OBJ_RESOLVE(ctx, query);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:3103:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           query = GRN_OBJ_RESOLVE(ctx, query);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:3105:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           index = GRN_OBJ_RESOLVE(ctx, index);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:3105:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           index = GRN_OBJ_RESOLVE(ctx, index);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:3107:40: note: in expansion of macro 'GRN_UINT32_VALUE'
                          (grn_operator)GRN_UINT32_VALUE(op), NULL);
                                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:3118:16: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           op = GRN_OBJ_RESOLVE(ctx, op);
                ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:3118:16: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           op = GRN_OBJ_RESOLVE(ctx, op);
                ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:3120:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:3120:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:3122:18: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           expr = GRN_OBJ_RESOLVE(ctx, expr);
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:3122:18: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           expr = GRN_OBJ_RESOLVE(ctx, expr);
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:3124:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           table = GRN_OBJ_RESOLVE(ctx, table);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:3124:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           table = GRN_OBJ_RESOLVE(ctx, table);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1450:3: note: in definition of macro 'WITH_SPSAVE'
   block\
   ^~~~~~
   vp = e->values + e->values_curr;\
    
expr.c:3126: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:1478: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:3139:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           keys_ = GRN_OBJ_RESOLVE(ctx, keys_);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:3139:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           keys_ = GRN_OBJ_RESOLVE(ctx, keys_);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:3141:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:3141:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:3143:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           limit = GRN_OBJ_RESOLVE(ctx, limit);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:3143:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           limit = GRN_OBJ_RESOLVE(ctx, limit);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:3145:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           table = GRN_OBJ_RESOLVE(ctx, table);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:3145:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           table = GRN_OBJ_RESOLVE(ctx, table);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1450:3: note: in definition of macro 'WITH_SPSAVE'
   block\
   ^~~~~~
   vp = e->values + e->values_curr;\
    
expr.c:3168: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:1478: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:3185:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:3185:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:3187:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           keys_ = GRN_OBJ_RESOLVE(ctx, keys_);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:3187:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           keys_ = GRN_OBJ_RESOLVE(ctx, keys_);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:3189:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           table = GRN_OBJ_RESOLVE(ctx, table);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:3189:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           table = GRN_OBJ_RESOLVE(ctx, table);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:3240:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:3240:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:3242:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           str = GRN_OBJ_RESOLVE(ctx, str);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:3242:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           str = GRN_OBJ_RESOLVE(ctx, str);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:3244:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           table = GRN_OBJ_RESOLVE(ctx, table);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478: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:3244: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:3250:11: note: in expansion of macro 'GRN_OBJ_FORMAT_FIN'
           GRN_OBJ_FORMAT_FIN(ctx, &format);
           ^~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1466:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3451:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1466:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3453:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1466:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3455:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1466:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3457:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1466:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3472:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1466:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3474:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1466:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3476:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1466:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3478:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1466:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3493:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1466:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3495:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1466:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3497:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1466:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3499:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1466:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3518:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1466:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3520:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1466:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3522:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1466:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3524:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1466:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3544:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng0 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1466:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3546:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat0 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1466:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3548:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1466:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3550: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3557:22: note: in expansion of macro 'GRN_INT32_VALUE'
             r = d <= GRN_INT32_VALUE(value);
                      ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3560:22: note: in expansion of macro 'GRN_FLOAT_VALUE'
             r = d <= GRN_FLOAT_VALUE(value);
                      ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1466:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3578:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng0 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1466:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3580:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat0 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1466:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3582:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1466:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3584:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1466:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3586:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1466:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3588: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3607:17: note: in expansion of macro 'GRN_INT32_VALUE'
           ln0 = GRN_INT32_VALUE(value);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3609:17: note: in expansion of macro 'GRN_INT32_VALUE'
           la0 = GRN_INT32_VALUE(value);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3611:17: note: in expansion of macro 'GRN_INT32_VALUE'
           ln1 = GRN_INT32_VALUE(value);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3613:17: note: in expansion of macro 'GRN_INT32_VALUE'
           la1 = GRN_INT32_VALUE(value);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3615:17: note: in expansion of macro 'GRN_INT32_VALUE'
           ln2 = GRN_INT32_VALUE(value);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3617:17: note: in expansion of macro 'GRN_INT32_VALUE'
           la2 = GRN_INT32_VALUE(value);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3619:17: note: in expansion of macro 'GRN_INT32_VALUE'
           ln3 = GRN_INT32_VALUE(value);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3621:17: note: in expansion of macro 'GRN_INT32_VALUE'
           la3 = GRN_INT32_VALUE(value);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1821:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1835:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1358:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1849:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1863:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1877:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1891:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1894:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1905:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1919:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475: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:1378:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1770:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3630:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2292:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:3660:11: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
           ARITHMETIC_UNARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2300:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:3660: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2309:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:3660: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2317:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:3660:11: 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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2326:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:3660:11: 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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2334:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:3660:11: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
           ARITHMETIC_UNARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2342:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:3660:11: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
           ARITHMETIC_UNARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2361:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:3660:11: 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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2369:5: note: in definition of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3673:20: note: in expansion of macro 'GRN_INT64_VALUE'
               x_ = GRN_INT64_VALUE(res);
                    ^~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:766,
                 from expr.c:18:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1821:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1835:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1358:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1849:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1863:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1877:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1891:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1894:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1905:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1919:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1475: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:1378:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1770:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3679: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1821:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1835:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1358:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1849:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1863:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1877:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1891:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1894:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1905:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1919:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475: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:1378:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1770:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3698:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2023:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2114:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2031:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2114:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2039:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2114:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2047:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2114:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2055:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2114:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2063:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2114:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2071:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2114:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2079:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2114:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2023:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2126:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2031:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2126:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2039:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2126:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2047:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2126:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2055:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2126:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2063:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2126:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2071:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2126:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2079:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2126:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2137:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2023:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2138:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2031:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2138:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2039:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2138:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2047:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2138:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2055:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2138:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2063:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2138:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2071:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2138:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2079:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2138:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:2097:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2097:49: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2138:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:2097:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2097:49: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2138:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2149:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2023:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2150:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2031:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2150:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2039:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2150:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2047:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2150:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2055:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2150:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2063:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2150:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2071:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2150:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2079:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2150:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1358:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:2097:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2097:49: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2150:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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 hash.c  -fPIC -DPIC -o .libs/hash.o
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1358:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:2097:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2097:49: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2150:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2161:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2023:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2162:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2031:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2162:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2039:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2162:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2047:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2162:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2055:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2162:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2063:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2162:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2071:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2162:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2079:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2162:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:2097:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2097:49: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2162:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:2097:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2097:49: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2162:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2173:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2023:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2174:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2031:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2174:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2039:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2174:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2047:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2174:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2055:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2174:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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 geo.c  -fPIC -DPIC -o .libs/geo.o
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2063:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2174:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2071:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2174:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2079:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2174:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:2097:19: note: in expansion of macro 'UNSIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2097:49: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2174:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2185:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2023:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2186:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2031:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2186:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2039:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2186:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2047:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2186:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2055:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2186:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2063:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2186:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2071:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2186:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2079:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2186:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:2097:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2097:49: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2186:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:2097:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2097:49: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2186:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2197:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2023:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2198:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2031:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2198:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2039:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2198:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2047:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2198:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2055:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2198:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2063:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2198:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2071:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2198:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2079:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2198:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:2097:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2097:49: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2198:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2199:41: note: in expansion of macro 'GRN_TIME_VALUE'
                                         GRN_TIME_VALUE,                 \
                                         ^~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:2097:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2097:49: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2198:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2199:41: note: in expansion of macro 'GRN_TIME_VALUE'
                                         GRN_TIME_VALUE,                 \
                                         ^~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2209:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2023:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2210:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2031:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2210:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2039:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2210:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2047:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2210:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2055:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2210:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2063:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2210:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2071:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2210:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2079:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2210:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:2097:19: note: in expansion of macro 'UNSIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2097:49: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2210:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2221:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2023:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2222:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2031:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2222:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2039:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2222:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2047:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2222:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2055:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2222:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2063:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2222:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2071:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2222:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2079:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2222:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1475: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:1378:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:2097:19: note: in expansion of macro 'FLOAT_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2097:49: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2222:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3716: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2023:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2114:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2031:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2114:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2039:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2114:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2047:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2114:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2055:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2114:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2063:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2114:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2071:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2114:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2079:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2114:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2023:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2126:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2031:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2126:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_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));
     ^~~~~~~~
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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2039:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2126:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2047:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2126:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2055:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2126:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2063:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2126:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2071:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2126:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_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);
            ^~~~~~~~~~~~~~~~~~~~~~~
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:1471: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:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2079:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2126:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_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:1473: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:1474: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:1475: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:1480: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,
     ^~~~~~~~~~~~~~~~~~~
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);
                    ^~~~~~~~~~~~~~~~~~~~~~~
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:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2137:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2023:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2138:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2031:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2138:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2039:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2138:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2047:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2138:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from grn_geo.h:21:0,
                 from geo.c:19:
geo.c: In function 'grn_geo_cursor_entry_next_push':
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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2055:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2138:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
geo.c: In function 'grn_geo_cursor_each':
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));
       ^~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2063:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2138:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_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),
                           ^~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2071:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2138:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_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:2195:27: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                           GRN_GEO_POINT_VALUE_RAW(center));
                           ^~~~~~~~~~~~~~~~~~~~~~~
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:1471: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);
                ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472: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:1473: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:1474: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:1475: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:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2079:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2138:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_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),
                                  ^~~~~~~~~~~~~~~~~~~~~~~
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:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:2097:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2097:49: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2138:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:2097:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2097:49: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2138:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
geo.c: In function 'grn_geo_distance_rectangle':
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2149:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_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:2716:38: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                      GRN_GEO_POINT_VALUE_RAW(point1),
                                      ^~~~~~~~~~~~~~~~~~~~~~~
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c: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':
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),
                                     ^~~~~~~~~~~~~~~~~~~~~~~
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':
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),
                                                ^~~~~~~~~~~~~~~~~~~~~~~
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));
                                                ^~~~~~~~~~~~~~~~~~~~~~~
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));
                                                ^~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2023:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2150:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2031:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2150:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2039:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2150:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2047:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2150:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2055:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2150:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2063:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2150:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2071:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2150:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2079:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2150:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1358:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:2097:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2097:49: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2150:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1358:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:2097:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2097:49: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2150:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2161:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2023:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2162:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2031:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2162:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2039:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2162:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2047:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2162:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2055:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2162:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2063:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2162:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2071:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2162:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2079:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2162:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:2097:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2097:49: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2162:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:2097:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2097:49: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2162:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2173:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2023:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2174:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2031:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2174:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2039:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2174:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2047:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2174:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2055:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2174:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2063:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2174:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2071:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2174:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2079:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2174:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:2097:19: note: in expansion of macro 'UNSIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2097:49: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2174:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2185:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2023:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2186:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2031:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2186:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2039:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2186:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2047:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2186:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2055:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2186:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2063:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2186:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2071:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2186:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c: In function 'grn_hash_entry_put_key':
hash.c:1514:8: warning: cast increases required alignment of target type [-Wcast-align]
       *(uint32_t *)entry->plain_entry.key = hash_value;
        ^
hash.c: In function 'get_key':
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2079:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2186:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c:1577:44: warning: cast increases required alignment of target type [-Wcast-align]
   return grn_hash_entry_get_key(ctx, hash, (grn_hash_entry *)n);
                                            ^
hash.c: In function 'get_value':
hash.c:1583: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:1590:44: warning: cast increases required alignment of target type [-Wcast-align]
   return grn_hash_entry_put_key(ctx, hash, (grn_hash_entry *)n, h, key, len);
                                            ^
hash.c: In function 'match_key':
hash.c:1597: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:2097:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2097:49: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2186:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:2097:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2097:49: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2186:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2197:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2023:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2198:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2031:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2198:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2039:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2198:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2047:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2198:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2055:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2198:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2063:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2198:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2071:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2198:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c: In function 'pack':
hash.c:2934:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:2968:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2079:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2198:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c:2934:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:2968:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:2935:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:2968:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:2935:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:2968:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:2937:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:2968:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:2937:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:2968: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:2097:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2097:49: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2198:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2199:41: note: in expansion of macro 'GRN_TIME_VALUE'
                                         GRN_TIME_VALUE,                 \
                                         ^~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c:2938:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:2968:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:2938:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:2968: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:2097:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2097:49: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2198:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2199:41: note: in expansion of macro 'GRN_TIME_VALUE'
                                         GRN_TIME_VALUE,                 \
                                         ^~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2209:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c:2934:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:2968:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:2934:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:2968:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:2935:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:2968:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:2935:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:2968:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:2937:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:2968: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2023:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2210:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c:2937:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:2968:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:2938:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:2968:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:2938:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:2968: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2031:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2210:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c: In function 'part':
hash.c:2934:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3003: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2039:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2210:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c:2934:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3003:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
hash.c:2935:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3003:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
hash.c:2935:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3003: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2047:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2210:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c:2937:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3003:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
hash.c:2937:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3003:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
hash.c:2938:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3003: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2055:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2210:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c:2938:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3003:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
hash.c:2934:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3003: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2063:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2210:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c:2934:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3003:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
hash.c:2935:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3003:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
hash.c:2935:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3003:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2071:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2210:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c:2937:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3003:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
hash.c:2937:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3003:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2079:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2210:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c:2938:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3003:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
hash.c:2938:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3003:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
hash.c:2934:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3009:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
hash.c:2934:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3009:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
hash.c:2935:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3009:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:2097:19: note: in expansion of macro 'UNSIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2097:49: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2210:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c:2935:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3009:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2221:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c:2937:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3009:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
hash.c:2937:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3009:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
hash.c:2938:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3009:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
hash.c:2938:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3009: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2023:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2222:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c:2934:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3009:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
hash.c:2934:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3009:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
hash.c:2935:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3009: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2031:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2222:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c:2935:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3009:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
hash.c:2937:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3009:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
hash.c:2937:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3009: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2039:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2222:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c:2938:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3009:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
hash.c:2938:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3009: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2047:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2222:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c:2934:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3012:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:2934:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3012:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:2935:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3012: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2055:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2222:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c:2935:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3012:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:2937:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3012: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2063:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2222:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c:2937:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3012:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:2938:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3012:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:2938:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3012:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2071:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2222:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c:2934:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3012:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:2934:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3012:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2079:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2222:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c:2935:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3012:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:2935:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3012:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:2937:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3012:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1475: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:1378:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:2097:19: note: in expansion of macro 'FLOAT_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2097:49: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2222:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2252:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3728:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c:2937:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3012:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:2938:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3012: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2292:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:3740: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2300:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:3740:9: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
         ARITHMETIC_UNARY_OPERATION_DISPATCH(
         ^
hash.c:2938:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3012: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2309:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:3740: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2317:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:3740: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2326:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:3740:9: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
         ARITHMETIC_UNARY_OPERATION_DISPATCH(
         ^
hash.c:2934:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3025: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2334:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:3740:9: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
         ARITHMETIC_UNARY_OPERATION_DISPATCH(
         ^
hash.c:2934:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3025:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2342:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:3740:9: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
         ARITHMETIC_UNARY_OPERATION_DISPATCH(
         ^
hash.c:2935:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3025:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
hash.c:2935:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3025:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
hash.c:2937:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3025:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
hash.c:2937:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3025:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2361:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:3740:9: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
         ARITHMETIC_UNARY_OPERATION_DISPATCH(
         ^
hash.c:2938:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3025: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2369:5: note: in definition of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:1659:8: note: in expansion of macro 'GRN_INT64_VALUE'
   x_ = GRN_INT64_VALUE(res);                                 \
        ^~~~~~~~~~~~~~~
expr.c:3745:11: note: in expansion of macro 'TEXT_UNARY_ARITHMETIC_OPERATION'
           TEXT_UNARY_ARITHMETIC_OPERATION(~),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
hash.c:2938:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3025:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
hash.c:2934:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3025:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
hash.c:2934:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3025:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
hash.c:2935:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3025: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:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
hash.c:2935:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3025:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
hash.c:2937:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3025:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
hash.c:2937:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3025:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
hash.c:2938:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3025:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
hash.c:2938:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3025: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
hash.c:2934:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3029:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
hash.c:2934:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3029:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
hash.c:2935:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3029:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
hash.c:2935:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3029: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
hash.c:2937:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3029: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
hash.c:2937:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3029: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
hash.c:2938:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3029: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
hash.c:2938:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:2942:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3029:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
hash.c:2934:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3029:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
hash.c:2934:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3029:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
hash.c:2935:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3029:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
hash.c:2935:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3029:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
hash.c:2937:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3029:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
hash.c:2937:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3029:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
hash.c:2938:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3029:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
hash.c:2938:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:2942:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3029:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
hash.c: In function 'pack_val32':
hash.c:3072:10: warning: cast increases required alignment of target type [-Wcast-align]
     : (*((int32_t *)((byte *)((arg->flags & GRN_TABLE_SORT_BY_VALUE)\
          ^
hash.c:3104:3: note: in expansion of macro 'PREPARE_VAL32'
   PREPARE_VAL32(id, c, &cr);
   ^~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
hash.c:3072:10: warning: cast increases required alignment of target type [-Wcast-align]
     : (*((int32_t *)((byte *)((arg->flags & GRN_TABLE_SORT_BY_VALUE)\
          ^
hash.c:3114:5: note: in expansion of macro 'PREPARE_VAL32'
     PREPARE_VAL32(id, e, &er);
     ^~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1821:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1835:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1358:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1849:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1863:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1877:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1891:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1894:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1905:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1919:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475: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:1378:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1770:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3748: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1933:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1643:8: note: in expansion of macro 'GRN_INT64_VALUE'
   x_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3757:11: note: in expansion of macro 'TEXT_ARITHMETIC_OPERATION'
           TEXT_ARITHMETIC_OPERATION(|),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1933:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3748:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1647:8: note: in expansion of macro 'GRN_INT64_VALUE'
   y_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3757: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:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1821:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1835:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1358:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1849:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1863:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1877:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1891:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1894:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1905:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1919:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475: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:1378:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1770:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3760: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1933:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1643:8: note: in expansion of macro 'GRN_INT64_VALUE'
   x_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3769:11: note: in expansion of macro 'TEXT_ARITHMETIC_OPERATION'
           TEXT_ARITHMETIC_OPERATION(^),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1933:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3760:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1647:8: note: in expansion of macro 'GRN_INT64_VALUE'
   y_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3769: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:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1821:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1835:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1358:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1849:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1863:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1877:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1891:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1894:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1905:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1919:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475: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:1378:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1770:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3772: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1933:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1643:8: note: in expansion of macro 'GRN_INT64_VALUE'
   x_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3781:11: note: in expansion of macro 'TEXT_ARITHMETIC_OPERATION'
           TEXT_ARITHMETIC_OPERATION(&),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1933:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3772:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1647:8: note: in expansion of macro 'GRN_INT64_VALUE'
   y_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3781: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:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1821:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1835:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1358:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1849:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1863:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1877:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1891:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1894:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1905:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1919:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475: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:1378:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1770:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3784: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1933:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1643:8: note: in expansion of macro 'GRN_INT64_VALUE'
   x_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3793:11: note: in expansion of macro 'TEXT_ARITHMETIC_OPERATION'
           TEXT_ARITHMETIC_OPERATION(<<),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1933:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3784:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1647:8: note: in expansion of macro 'GRN_INT64_VALUE'
   y_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3793: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:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1821:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1835:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1358:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1849:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1863:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1877:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1891:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1894:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1905:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1919:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475: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:1378:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1770:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3796: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1933:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1643:8: note: in expansion of macro 'GRN_INT64_VALUE'
   x_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3805:11: note: in expansion of macro 'TEXT_ARITHMETIC_OPERATION'
           TEXT_ARITHMETIC_OPERATION(>>),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1933:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3796:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1647:8: note: in expansion of macro 'GRN_INT64_VALUE'
   y_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3805: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:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1795:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1809:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1821:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1354:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER16_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1823:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1835:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1358:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER16_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1837:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1849:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1362:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER32_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1851:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1863:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1366:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER32_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1865:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1877:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER64_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1879:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1891:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER64_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1893:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1894:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1905:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1770:19: note: in expansion of macro 'INTEGER64_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1907:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1919:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1698:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1706:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1714:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1722:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1730:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1738:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1746:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1754:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1475: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:1378:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1770:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1770:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1921:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1976:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3808: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1933:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:3826:18: note: in expansion of macro 'GRN_INT64_VALUE'
             x_ = GRN_INT64_VALUE(res);
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1933:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3808:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:3830: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:1478:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2407: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_INCR);
         ^
expr.c:2408: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_INCR);
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:766,
                 from expr.c:18:
../include/groonga/groonga.h:1478:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2407: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, 1, GRN_OBJ_DECR);
         ^
expr.c:2408: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, 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:1478:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2407: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_INCR);
         ^
expr.c:2408: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_INCR);
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:766,
                 from expr.c:18:
../include/groonga/groonga.h:1478:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2407:9: note: in expansion of macro 'GRN_PTR_VALUE'
   col = GRN_PTR_VALUE(var);                                             \
         ^~~~~~~~~~~~~
expr.c:3846: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:2408:10: warning: cast increases required alignment of target type [-Wcast-align]
   rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));            \
          ^
expr.c:3846: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:1497: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:4244:21: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     grn_obj **pi = &GRN_PTR_VALUE_AT(&si->index, ni);
                     ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1490: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:4248: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:4271:14: note: in expansion of macro 'GRN_INT32_VALUE'
       return GRN_INT32_VALUE(ec[1].value);
              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:4277: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:4537:18: note: in expansion of macro 'GRN_INT32_VALUE'
           *sid = GRN_INT32_VALUE(ec[1].value) + 1;
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:4539: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:4820:30: note: in expansion of macro 'GRN_INT32_VALUE'
           si->max_interval = GRN_INT32_VALUE(*p);
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:4829:38: note: in expansion of macro 'GRN_INT32_VALUE'
           si->similarity_threshold = GRN_INT32_VALUE(*p);
                                      ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:4838:34: note: in expansion of macro 'GRN_INT32_VALUE'
           si->quorum_threshold = GRN_INT32_VALUE(*p);
                                  ^~~~~~~~~~~~~~~
expr.c: In function 'grn_scan_info_build_full':
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:5147:20: note: in expansion of macro 'GRN_INT32_VALUE'
           weight = GRN_INT32_VALUE(c->value);
                    ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:5308: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:5493: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:5605: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:5750:14: note: in expansion of macro 'GRN_INT32_VALUE'
       return GRN_INT32_VALUE(result);
              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:5756: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:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:5958:25: note: in expansion of macro 'GRN_UINT32_VALUE'
           posting.rid = GRN_UINT32_VALUE(&dest);
                         ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:6020:15: note: in expansion of macro 'GRN_RECORD_VALUE'
         tid = GRN_RECORD_VALUE(si->query);
               ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1491: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:6032:15: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
         sid = GRN_UINT32_VALUE_AT(&(si->wv), 0);
               ^~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1490: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:6033: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:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:6104:16: note: in expansion of macro 'GRN_UINT32_VALUE'
           id = GRN_UINT32_VALUE(&dest);
                ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:6135:15: note: in expansion of macro 'GRN_RECORD_VALUE'
         tid = GRN_RECORD_VALUE(si->query);
               ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1491: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:6151:15: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
         sid = GRN_UINT32_VALUE_AT(&(si->wv), 0);
               ^~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1490: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:6152: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:1478:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:6240: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:1478:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:6304:23: note: in expansion of macro 'GRN_PTR_VALUE'
   grn_obj wv, **ip = &GRN_PTR_VALUE(&si->index);
                       ^~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:6307:18: note: in expansion of macro 'GRN_INT32_VALUE'
   int32_t *wp = &GRN_INT32_VALUE(&si->wv);
                  ^~~~~~~~~~~~~~~
expr.c:6335:26: warning: cast increases required alignment of target type [-Wcast-align]
   optarg.weight_vector = (int *)GRN_BULK_HEAD(&wv);
                          ^
expr.c:6355: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:6359:31: note: in expansion of macro 'GRN_INT32_VALUE'
       optarg.weight_vector = &GRN_INT32_VALUE(&wv);
                               ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1497: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:6365:21: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     optarg.scorer = GRN_PTR_VALUE_AT(&(si->scorers), j);
                     ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1497: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:6367:7: note: in expansion of macro 'GRN_PTR_VALUE_AT'
       GRN_PTR_VALUE_AT(&(si->scorer_args_exprs), j);
       ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1491: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:6369: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:1491: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:6581:13: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
       sid = GRN_UINT32_VALUE_AT(&(si->wv), 0);
             ^~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1490: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:6582: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:1491: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:6673:13: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
       sid = GRN_UINT32_VALUE_AT(&(si->wv), 0);
             ^~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1490: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:6674: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:1478:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:6836: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:1547:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(type *)(GRN_BULK_CURR(obj));\
              ^
../include/groonga/groonga.h:1564: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:6985:11: note: in expansion of macro 'GRN_PTR_POP'
           GRN_PTR_POP(&res_stack, res_);
           ^~~~~~~~~~~
expr.c:7031: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:7062: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:7072: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:1547:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(type *)(GRN_BULK_CURR(obj));\
              ^
../include/groonga/groonga.h:1557: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:1547:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(type *)(GRN_BULK_CURR(obj));\
              ^
../include/groonga/groonga.h:1557: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:1547:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(type *)(GRN_BULK_CURR(obj));\
              ^
../include/groonga/groonga.h:1557: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:1547:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(type *)(GRN_BULK_CURR(obj));\
              ^
../include/groonga/groonga.h:1564: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:1547:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(type *)(GRN_BULK_CURR(obj));\
              ^
../include/groonga/groonga.h:1557: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:1547:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(type *)(GRN_BULK_CURR(obj));\
              ^
../include/groonga/groonga.h:1557: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:1547:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(type *)(GRN_BULK_CURR(obj));\
              ^
../include/groonga/groonga.h:1557: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:1547:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(type *)(GRN_BULK_CURR(obj));\
              ^
../include/groonga/groonga.h:1557: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:104:7: note: in expansion of macro 'GRN_INT32_POP'
       GRN_INT32_POP(&efsi->quorum_threshold_stack, quorum_threshold);
       ^~~~~~~~~~~~~
../include/groonga/groonga.h:1547:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(type *)(GRN_BULK_CURR(obj));\
              ^
../include/groonga/groonga.h:1557: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:226:5: note: in expansion of macro 'GRN_INT32_POP'
     GRN_INT32_POP(&efsi->max_interval_stack, max_interval);
     ^~~~~~~~~~~~~
../include/groonga/groonga.h:1547:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(type *)(GRN_BULK_CURR(obj));\
              ^
../include/groonga/groonga.h:1557: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:238:5: note: in expansion of macro 'GRN_INT32_POP'
     GRN_INT32_POP(&efsi->similarity_threshold_stack, similarity_threshold);
     ^~~~~~~~~~~~~
../include/groonga/groonga.h:1547:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(type *)(GRN_BULK_CURR(obj));\
              ^
../include/groonga/groonga.h:1557: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:250:5: note: in expansion of macro 'GRN_INT32_POP'
     GRN_INT32_POP(&efsi->quorum_threshold_stack, quorum_threshold);
     ^~~~~~~~~~~~~
In file included from expr.c:7307:0:
grn_ecmascript.lemon:546: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:1547:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(type *)(GRN_BULK_CURR(obj));\
              ^
../include/groonga/groonga.h:1564: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:7335: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:8702: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:1478:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:9315:32: note: in expansion of macro 'GRN_PTR_VALUE'
               grn_obj *index = GRN_PTR_VALUE(&(si->index));
                                ^~~~~~~~~~~~~
../include/groonga/groonga.h:1547:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(type *)(GRN_BULK_CURR(obj));\
              ^
../include/groonga/groonga.h:1558: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:9360: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:1547:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(type *)(GRN_BULK_CURR(obj));\
              ^
../include/groonga/groonga.h:1564: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:9395:7: note: in expansion of macro 'GRN_PTR_POP'
       GRN_PTR_POP(&keywords, keyword);
       ^~~~~~~~~~~
../include/groonga/groonga.h:1547:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(type *)(GRN_BULK_CURR(obj));\
              ^
../include/groonga/groonga.h:1564: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:9405: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 id.lo id.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 id.c  -fPIC -DPIC -o .libs/id.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 ii.lo ii.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 ii.c  -fPIC -DPIC -o .libs/ii.o
ii.c: In function 'buffer_open':
ii.c:2196:19: warning: cast increases required alignment of target type [-Wcast-align]
     if (b) { *b = (buffer *)p; }
                   ^
ii.c:2197:21: warning: cast increases required alignment of target type [-Wcast-align]
     if (bt) { *bt = (buffer_term *)(p + LPOS(pos)); }
                     ^
ii.c: In function 'array_at':
ii.c:2499: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:2517: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 'buffer_new':
ii.c:4246:9: warning: cast increases required alignment of target type [-Wcast-align]
   *br = (buffer_rec *)(((byte *)&b->terms[b->header.nterms]) + b->header.buffer_free);
         ^
ii.c: In function 'grn_ii_update_one':
ii.c:4685:14: warning: cast increases required alignment of target type [-Wcast-align]
         br = (buffer_rec *)(((byte *)&b->terms[b->header.nterms])
              ^
ii.c:4748: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:4935: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 ii.c:18:
ii.c: In function 'grn_ii_column_update':
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
ii.c:6481:50: note: in expansion of macro 'GRN_RECORD_VALUE'
           grn_uvector_add_element(ctx, &uvector, GRN_RECORD_VALUE(new_),
                                                  ^~~~~~~~~~~~~~~~
ii.c:6528:11: warning: cast increases required alignment of target type [-Wcast-align]
     tpe = (grn_id *)GRN_BULK_CURR(post);
           ^
ii.c:6529:15: warning: cast increases required alignment of target type [-Wcast-align]
     for (tp = (grn_id *)GRN_BULK_HEAD(post); tp < tpe; tp++) {
               ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:766,
                 from ii.c:18:
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
ii.c:6594:50: note: in expansion of macro 'GRN_RECORD_VALUE'
           grn_uvector_add_element(ctx, &uvector, GRN_RECORD_VALUE(old_),
                                                  ^~~~~~~~~~~~~~~~
ii.c: In function 'grn_ii_builder_append_value':
ii.c:12236:16: warning: cast increases required alignment of target type [-Wcast-align]
         tid = *(grn_id *)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 index_column.lo index_column.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-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=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
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
io.c: In function 'array_init_':
io.c:371: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:376:15: warning: cast increases required alignment of target type [-Wcast-align]
   io->ainfo = (grn_io_array_info *)mp;
               ^
io.c:386:29: warning: cast increases required alignment of target type [-Wcast-align]
     io->ainfo[i].segments = (uint32_t *)hp;
                             ^
io.c:387: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:400:38: warning: cast increases required alignment of target type [-Wcast-align]
     grn_io_array_spec *array_specs = (grn_io_array_spec *)io->user_header;
                                      ^
io.c: In function 'grn_io_expire':
io.c:1299:44: warning: cast increases required alignment of target type [-Wcast-align]
           grn_io_array_spec *array_specs = (grn_io_array_spec *)io->user_header;
                                            ^
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-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:1472: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:1472: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:1472: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:1472: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:1477: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:1521: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:1472: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:1472: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:1471: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:1472: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:1547:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(type *)(GRN_BULK_CURR(obj));\
              ^
../include/groonga/groonga.h:1558: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:1547:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(type *)(GRN_BULK_CURR(obj));\
              ^
../include/groonga/groonga.h:1558: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:533:3: note: in expansion of macro 'GRN_UINT32_POP'
   GRN_UINT32_POP(&loader->level, begin);
   ^~~~~~~~~~~~~~
load.c:534:17: warning: cast increases required alignment of target type [-Wcast-align]
   value_begin = (grn_obj *)GRN_TEXT_VALUE(&loader->values) + begin;
                 ^
load.c:535: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
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
/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 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:1471: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:1472: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:1475: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:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:180:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:226:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:183:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:226:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:186:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:226:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:189:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:226:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:192:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:226:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:195:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:226:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:198:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:226:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:201:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (fabs(x_ - GRN_FLOAT_VALUE(y)) < DBL_EPSILON);\
                    ^~~~~~~~~~~~~~~
operator.c:226:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:180:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:232:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:183:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:232:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:186:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:232:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:189:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:232:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:192:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:232:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:195:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:232:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:198:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:232:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:201:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (fabs(x_ - GRN_FLOAT_VALUE(y)) < DBL_EPSILON);\
                    ^~~~~~~~~~~~~~~
operator.c:232:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:237:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:392: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:180:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:238:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:183:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:238:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:186:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:238:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:189:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:238:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:192:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:238:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:195:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:238:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:198:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:238:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:201:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (fabs(x_ - GRN_FLOAT_VALUE(y)) < DBL_EPSILON);\
                    ^~~~~~~~~~~~~~~
operator.c:238:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:243:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:392: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:180:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:244:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:183:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:244:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:186:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:244:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:189:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:244:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:192:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:244:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:195:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:244:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:198:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:244:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:201:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (fabs(x_ - GRN_FLOAT_VALUE(y)) < DBL_EPSILON);\
                    ^~~~~~~~~~~~~~~
operator.c:244:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:249:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:392: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:180:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:250:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:183:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:250:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:186:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:250:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:189:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:250:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:192:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:250:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:195:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:250:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:198:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:250:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:201:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (fabs(x_ - GRN_FLOAT_VALUE(y)) < DBL_EPSILON);\
                    ^~~~~~~~~~~~~~~
operator.c:250:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:255:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:392: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:180:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:256:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:183:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:256:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:186:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:256:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:189:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:256:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:192:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:256:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:195:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:256:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:198:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:256:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:201:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (fabs(x_ - GRN_FLOAT_VALUE(y)) < DBL_EPSILON);\
                    ^~~~~~~~~~~~~~~
operator.c:256:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:261:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:392: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:180:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:262:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:183:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:262:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:186:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:262:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:189:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:262:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:192:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:262:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:195:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:262:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:198:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:262:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:201:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (fabs(x_ - GRN_FLOAT_VALUE(y)) < DBL_EPSILON);\
                    ^~~~~~~~~~~~~~~
operator.c:262:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:267:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:392: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:1471: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:270:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ == GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:392: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_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:273:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ == GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:392: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:277:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ == GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:392:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:280:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ == GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:392: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:1475: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:283:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ == GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:392: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:292:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ == GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:392:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:307:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:392: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:180:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:308:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:183:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:308:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:186:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:308:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:189:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:308:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:192:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:308:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:195:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:308:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:198:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:308:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:201:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (fabs(x_ - GRN_FLOAT_VALUE(y)) < DBL_EPSILON);\
                    ^~~~~~~~~~~~~~~
operator.c:308:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:313:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:392: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:316:21: note: in expansion of macro 'GRN_INT32_VALUE'
         r = ((x_ <= GRN_INT32_VALUE(y)) && (x_ >= GRN_INT32_VALUE(y)));\
                     ^~~~~~~~~~~~~~~
operator.c:392: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:316:51: note: in expansion of macro 'GRN_INT32_VALUE'
         r = ((x_ <= GRN_INT32_VALUE(y)) && (x_ >= GRN_INT32_VALUE(y)));\
                                                   ^~~~~~~~~~~~~~~
operator.c:392: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:319:21: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = ((x_ <= GRN_UINT32_VALUE(y)) && (x_ >= GRN_UINT32_VALUE(y)));\
                     ^~~~~~~~~~~~~~~~
operator.c:392: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:319:52: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = ((x_ <= GRN_UINT32_VALUE(y)) && (x_ >= GRN_UINT32_VALUE(y)));\
                                                    ^~~~~~~~~~~~~~~~
operator.c:392: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:323:21: note: in expansion of macro 'GRN_INT64_VALUE'
         r = ((x_ <= GRN_INT64_VALUE(y)) && (x_ >= GRN_INT64_VALUE(y)));\
                     ^~~~~~~~~~~~~~~
operator.c:392: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:323:51: note: in expansion of macro 'GRN_INT64_VALUE'
         r = ((x_ <= GRN_INT64_VALUE(y)) && (x_ >= GRN_INT64_VALUE(y)));\
                                                   ^~~~~~~~~~~~~~~
operator.c:392:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:326:21: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = ((x_ <= GRN_UINT64_VALUE(y)) && (x_ >= GRN_UINT64_VALUE(y)));\
                     ^~~~~~~~~~~~~~~~
operator.c:392:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:326:52: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = ((x_ <= GRN_UINT64_VALUE(y)) && (x_ >= GRN_UINT64_VALUE(y)));\
                                                    ^~~~~~~~~~~~~~~~
operator.c:392:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:329:21: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                     ^~~~~~~~~~~~~~~
operator.c:392:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:329:51: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                                   ^~~~~~~~~~~~~~~
operator.c:392: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:180:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:355:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:183:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:355:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:186:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:355:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:189:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:355:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:192:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:355:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:195:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:355:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:198:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:355:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:201:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (fabs(x_ - GRN_FLOAT_VALUE(y)) < DBL_EPSILON);\
                    ^~~~~~~~~~~~~~~
operator.c:355:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:392: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:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:180:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:226:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:183:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:226:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:186:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:226:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:189:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:226:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:192:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:226:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:195:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:226:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:198:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:226:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:201:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (fabs(x_ - GRN_FLOAT_VALUE(y)) < DBL_EPSILON);\
                    ^~~~~~~~~~~~~~~
operator.c:226:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:180:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:232:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:183:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:232:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:186:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:232:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:189:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:232:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:192:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:232:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:195:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:232:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:198:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:232:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:201:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (fabs(x_ - GRN_FLOAT_VALUE(y)) < DBL_EPSILON);\
                    ^~~~~~~~~~~~~~~
operator.c:232:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:237:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:401: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:180:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:238:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:183:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:238:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:186:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:238:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:189:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:238:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:192:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:238:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:195:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:238:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:198:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:238:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:201:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (fabs(x_ - GRN_FLOAT_VALUE(y)) < DBL_EPSILON);\
                    ^~~~~~~~~~~~~~~
operator.c:238:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:243:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:401: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:180:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:244:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:183:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:244:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:186:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:244:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:189:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:244:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:192:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:244:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:195:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:244:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:198:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:244:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:201:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (fabs(x_ - GRN_FLOAT_VALUE(y)) < DBL_EPSILON);\
                    ^~~~~~~~~~~~~~~
operator.c:244:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:249:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:401: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:180:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:250:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:183:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:250:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:186:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:250:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:189:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:250:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:192:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:250:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:195:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:250:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:198:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:250:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:201:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (fabs(x_ - GRN_FLOAT_VALUE(y)) < DBL_EPSILON);\
                    ^~~~~~~~~~~~~~~
operator.c:250:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:255:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:401: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:180:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:256:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:183:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:256:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:186:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:256:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:189:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:256:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:192:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:256:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:195:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:256:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:198:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:256:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:201:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (fabs(x_ - GRN_FLOAT_VALUE(y)) < DBL_EPSILON);\
                    ^~~~~~~~~~~~~~~
operator.c:256:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:261:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:401: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:180:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:262:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:183:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:262:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:186:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:262:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:189:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:262:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:192:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:262:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:195:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:262:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:198:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:262:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:201:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (fabs(x_ - GRN_FLOAT_VALUE(y)) < DBL_EPSILON);\
                    ^~~~~~~~~~~~~~~
operator.c:262:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:267:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:401: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:1471: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:270:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ == GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:401: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_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:273:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ == GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:401: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:277:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ == GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:401:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:280:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ == GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:401: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:1475: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:283:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ == GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:401: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:292:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ == GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:401:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:307:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:401: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:180:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:308:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:183:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:308:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:186:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:308:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:189:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:308:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:192:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:308:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:195:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:308:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:198:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:308:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:201:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (fabs(x_ - GRN_FLOAT_VALUE(y)) < DBL_EPSILON);\
                    ^~~~~~~~~~~~~~~
operator.c:308:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:313:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:401: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:316:21: note: in expansion of macro 'GRN_INT32_VALUE'
         r = ((x_ <= GRN_INT32_VALUE(y)) && (x_ >= GRN_INT32_VALUE(y)));\
                     ^~~~~~~~~~~~~~~
operator.c:401: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:316:51: note: in expansion of macro 'GRN_INT32_VALUE'
         r = ((x_ <= GRN_INT32_VALUE(y)) && (x_ >= GRN_INT32_VALUE(y)));\
                                                   ^~~~~~~~~~~~~~~
operator.c:401: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:319:21: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = ((x_ <= GRN_UINT32_VALUE(y)) && (x_ >= GRN_UINT32_VALUE(y)));\
                     ^~~~~~~~~~~~~~~~
operator.c:401: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:319:52: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = ((x_ <= GRN_UINT32_VALUE(y)) && (x_ >= GRN_UINT32_VALUE(y)));\
                                                    ^~~~~~~~~~~~~~~~
operator.c:401: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:323:21: note: in expansion of macro 'GRN_INT64_VALUE'
         r = ((x_ <= GRN_INT64_VALUE(y)) && (x_ >= GRN_INT64_VALUE(y)));\
                     ^~~~~~~~~~~~~~~
operator.c:401: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:323:51: note: in expansion of macro 'GRN_INT64_VALUE'
         r = ((x_ <= GRN_INT64_VALUE(y)) && (x_ >= GRN_INT64_VALUE(y)));\
                                                   ^~~~~~~~~~~~~~~
operator.c:401:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:326:21: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = ((x_ <= GRN_UINT64_VALUE(y)) && (x_ >= GRN_UINT64_VALUE(y)));\
                     ^~~~~~~~~~~~~~~~
operator.c:401:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:326:52: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = ((x_ <= GRN_UINT64_VALUE(y)) && (x_ >= GRN_UINT64_VALUE(y)));\
                                                    ^~~~~~~~~~~~~~~~
operator.c:401:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:329:21: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                     ^~~~~~~~~~~~~~~
operator.c:401:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:329:51: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                                   ^~~~~~~~~~~~~~~
operator.c:401: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:180:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:355:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:183:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:355:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:186:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:355:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:189:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:355:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:192:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:355:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:195:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:355:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:198:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:355:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:201:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (fabs(x_ - GRN_FLOAT_VALUE(y)) < DBL_EPSILON);\
                    ^~~~~~~~~~~~~~~
operator.c:355:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:401: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:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:644: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:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:524:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:530:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:536:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:542:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:548:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700: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:1471: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:551:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472: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:554:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:558:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:561:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700: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:1475: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:564:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:573:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:588:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:594:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:600:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:524:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:530:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:536:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:542:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:548:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700: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:1471: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:551:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472: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:554:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:558:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:561:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700: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:1475: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:564:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:573:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:588:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:594:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:600:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:644: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:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:524:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:530:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:536:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:542:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:548:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700: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:1471: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:551:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472: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:554:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:558:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:561:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700: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:1475: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:564:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:573:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:588:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:594:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:600:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:524:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:530:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:536:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:542:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:548:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700: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:1471: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:551:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472: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:554:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:558:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:561:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700: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:1475: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:564:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:573:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:588:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:594:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:600:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:700: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:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:644: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:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:524:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:530:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:536:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:542:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:548:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709: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:1471: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:551:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472: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:554:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:558:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:561:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709: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:1475: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:564:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:573:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:588:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:594:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:600:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:524:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:530:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:536:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:542:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:548:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709: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:1471: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:551:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472: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:554:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:558:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:561:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709: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:1475: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:564:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:573:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:588:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:594:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:600:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:644: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:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:524:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:530:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:536:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:542:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:548:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709: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:1471: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:551:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472: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:554:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:558:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:561:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709: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:1475: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:564:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:573:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:588:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:594:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:600:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:524:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:530:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:536:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:542:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:548:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709: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:1471: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:551:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472: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:554:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:558:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:561:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709: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:1475: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:564:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:573:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:588:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:594:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:600:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:709: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:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:644: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:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:524:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:530:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:536:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:542:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:548:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718: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:1471: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:551:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472: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:554:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:558:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:561:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718: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:1475: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:564:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:573:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:588:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:594:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:600:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:524:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:530:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:536:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:542:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:548:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718: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:1471: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:551:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472: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:554:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:558:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:561:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718: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:1475: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:564:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:573:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:588:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:594:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:600:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:644: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:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:524:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:530:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:536:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:542:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:548:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718: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:1471: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:551:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472: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:554:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:558:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:561:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718: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:1475: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:564:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:573:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:588:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:594:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:600:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
expr.c: In function 'grn_expr_exec':
expr.c:3910:1: warning: const/copy propagation disabled: 24862 basic blocks and 109057 registers; increase --param max-gcse-memory above 339018232 [-Wdisabled-optimization]
 }
 ^
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
expr.c:3910:1: warning: PRE disabled: 24862 basic blocks and 109057 registers; increase --param max-gcse-memory above 339018232 [-Wdisabled-optimization]
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
expr.c:3910:1: warning: const/copy propagation disabled: 24862 basic blocks and 109057 registers; increase --param max-gcse-memory above 339018232 [-Wdisabled-optimization]
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:524:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:530:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:536:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:542:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:548:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718: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:1471: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:551:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472: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:554:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:558:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:561:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718: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:1475: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:564:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:573:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:588:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:594:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:600:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:718: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:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:644: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:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:524:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:530:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:536:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:542:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:548:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727: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:1471: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:551:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472: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:554:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:558:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:561:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727: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:1475: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:564:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:573:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:588:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:594:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:600:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:524:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:530:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:536:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:542:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:548:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727: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:1471: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:551:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472: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:554:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:558:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:561:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727: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:1475: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:564:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:573:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:588:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:594:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:600:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:680:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:644: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:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:524:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:530:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:536:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:542:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:548:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727: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:1471: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:551:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472: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:554:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:558:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:561:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727: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:1475: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:564:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:573:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:588:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:594:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:600:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:648:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:507:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:513:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:519:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:524:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:525:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:530:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:531:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:536:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:537:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:542:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:543:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:548:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727: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:1471: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:551:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472: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:554:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:558:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:561:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727: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:1475: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:564:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:573:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:588:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:589:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:594:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:595:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:600:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:601:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:480:51: note: in expansion of macro 'GRN_RECORD_VALUE'
         length = grn_table_get_key2(ctx, y_table, GRN_RECORD_VALUE(y), &y_key);\
                                                   ^~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:484:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:457:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:417:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:420:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:423:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:426:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:429:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:432:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:435:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:438:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:463:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:498:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:623:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:662:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:690:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:727: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:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:1074: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
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:1491: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:1491: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:1491: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:1491: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:1491: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:1491: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:1491: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:1491: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:1491: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:1491: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:1491: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:1491: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:1491: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:1491: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:1469: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:1470: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:1471: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:1472: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:1473: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:1474: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:1475: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:1473: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:1477: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:1477: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:1497: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:1477: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
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
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:953: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, 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:953:5: note: in expansion of macro 'grn_ntog'
     grn_ntog((keybuf), (key), (size));\
     ^~~~~~~~
pat.c:1936: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:953:5: note: in expansion of macro 'grn_ntog'
     grn_ntog((keybuf), (key), (size));\
     ^~~~~~~~
pat.c:1936:7: note: in expansion of macro 'KEY_DEC'
       KEY_DEC(pat, curr, key, len);
       ^~~~~~~
pat.c:962:9: warning: cast increases required alignment of target type [-Wcast-align]
       *((int64_t *)(keybuf)) = v ^ (((v^(1LL<<63))>> 63)|(1LL<<63));  \
         ^
pat.c:1936:7: note: in expansion of macro 'KEY_DEC'
       KEY_DEC(pat, curr, key, len);
       ^~~~~~~
pat.c: In function 'grn_pat_set_value':
pat.c:2011:15: warning: cast increases required alignment of target type [-Wcast-align]
             *((int32_t *)v) += *((int32_t *)value);
               ^
pat.c:2014:15: warning: cast increases required alignment of target type [-Wcast-align]
             *((int64_t *)v) += *((int64_t *)value);
               ^
pat.c:2023:15: warning: cast increases required alignment of target type [-Wcast-align]
             *((int32_t *)v) -= *((int32_t *)value);
               ^
pat.c:2026: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 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 plugin.c  -fPIC -DPIC -o .libs/plugin.o
plugin.c: In function 'grn_plugin_ensure_registered':
plugin.c:909:18: warning: cast increases required alignment of target type [-Wcast-align]
       plugin = *((grn_plugin **)value);
                  ^
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing      -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-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:1491: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:216:29: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
           GRN_OUTPUT_UINT64(GRN_UINT32_VALUE_AT(ids, i));
                             ^~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1490: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:241: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 'grn_proc_get_value_int64':
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:838:17: note: in expansion of macro 'GRN_INT32_VALUE'
     value_raw = GRN_INT32_VALUE(value);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473: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:840:17: note: in expansion of macro 'GRN_INT64_VALUE'
     value_raw = GRN_INT64_VALUE(value);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473: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:848:19: note: in expansion of macro 'GRN_INT64_VALUE'
       value_raw = GRN_INT64_VALUE(&buffer);
                   ^~~~~~~~~~~~~~~
proc.c: In function 'list_proc':
../include/groonga/groonga.h:1497: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:1339: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1375: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:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1474:12: note: in expansion of macro 'GRN_INT16_VALUE'
     return GRN_INT16_VALUE(number) < 0;
            ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1476:12: note: in expansion of macro 'GRN_INT32_VALUE'
     return GRN_INT32_VALUE(number) < 0;
            ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473: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:1478:12: note: in expansion of macro 'GRN_INT64_VALUE'
     return GRN_INT64_VALUE(number) < 0;
            ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
proc.c:1480:12: note: in expansion of macro 'GRN_TIME_VALUE'
     return GRN_TIME_VALUE(number) < 0;
            ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1482: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:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1531:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
proc.c:1553:24: note: in expansion of macro 'GRN_INT16_VALUE'
                        GRN_INT16_VALUE(number1),
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1532:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
proc.c:1554:24: note: in expansion of macro 'GRN_INT16_VALUE'
                        GRN_INT16_VALUE(number2));
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:1531:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
proc.c:1557:24: note: in expansion of macro 'GRN_UINT16_VALUE'
                        GRN_UINT16_VALUE(number1),
                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:1532:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
proc.c:1558:24: note: in expansion of macro 'GRN_UINT16_VALUE'
                        GRN_UINT16_VALUE(number2));
                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1531:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
proc.c:1561:24: note: in expansion of macro 'GRN_INT32_VALUE'
                        GRN_INT32_VALUE(number1),
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1532:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
proc.c:1562:24: note: in expansion of macro 'GRN_INT32_VALUE'
                        GRN_INT32_VALUE(number2));
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:1531:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
proc.c:1565:24: note: in expansion of macro 'GRN_UINT32_VALUE'
                        GRN_UINT32_VALUE(number1),
                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:1532:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
proc.c:1566:24: note: in expansion of macro 'GRN_UINT32_VALUE'
                        GRN_UINT32_VALUE(number2));
                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473: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:1531:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
proc.c:1569:24: note: in expansion of macro 'GRN_INT64_VALUE'
                        GRN_INT64_VALUE(number1),
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473: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:1532:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
proc.c:1570:24: note: in expansion of macro 'GRN_INT64_VALUE'
                        GRN_INT64_VALUE(number2));
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474: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:1531:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
proc.c:1573:24: note: in expansion of macro 'GRN_UINT64_VALUE'
                        GRN_UINT64_VALUE(number1),
                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1474: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:1532:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
proc.c:1574:24: note: in expansion of macro 'GRN_UINT64_VALUE'
                        GRN_UINT64_VALUE(number2));
                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1531:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
proc.c:1577:24: note: in expansion of macro 'GRN_FLOAT_VALUE'
                        GRN_FLOAT_VALUE(number1),
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1532:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
proc.c:1578:24: note: in expansion of macro 'GRN_FLOAT_VALUE'
                        GRN_FLOAT_VALUE(number2));
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473: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:1531:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
proc.c:1581:24: note: in expansion of macro 'GRN_TIME_VALUE'
                        GRN_TIME_VALUE(number1),
                        ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1473: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:1532:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
proc.c:1582: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:1488: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:1354:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
proc.c:1597:24: note: in expansion of macro 'GRN_INT16_VALUE_AT'
                        GRN_ ## type ## _VALUE_AT(uvector, offset));  \
                        ^~~~
proc.c:1610:5: note: in expansion of macro 'GET_UVECTOR_ELEMENT_AS'
     GET_UVECTOR_ELEMENT_AS(INT16);
     ^~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1489: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:1358:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
proc.c:1597:24: note: in expansion of macro 'GRN_UINT16_VALUE_AT'
                        GRN_ ## type ## _VALUE_AT(uvector, offset));  \
                        ^~~~
proc.c:1613:5: note: in expansion of macro 'GET_UVECTOR_ELEMENT_AS'
     GET_UVECTOR_ELEMENT_AS(UINT16);
     ^~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1490: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:1362:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
proc.c:1597:24: note: in expansion of macro 'GRN_INT32_VALUE_AT'
                        GRN_ ## type ## _VALUE_AT(uvector, offset));  \
                        ^~~~
proc.c:1616:5: note: in expansion of macro 'GET_UVECTOR_ELEMENT_AS'
     GET_UVECTOR_ELEMENT_AS(INT32);
     ^~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1491: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:1366:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
proc.c:1597:24: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
                        GRN_ ## type ## _VALUE_AT(uvector, offset));  \
                        ^~~~
proc.c:1619:5: note: in expansion of macro 'GET_UVECTOR_ELEMENT_AS'
     GET_UVECTOR_ELEMENT_AS(UINT32);
     ^~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1492: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:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
proc.c:1597:24: note: in expansion of macro 'GRN_INT64_VALUE_AT'
                        GRN_ ## type ## _VALUE_AT(uvector, offset));  \
                        ^~~~
proc.c:1622:5: note: in expansion of macro 'GET_UVECTOR_ELEMENT_AS'
     GET_UVECTOR_ELEMENT_AS(INT64);
     ^~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1493: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:1374:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
proc.c:1597:24: note: in expansion of macro 'GRN_UINT64_VALUE_AT'
                        GRN_ ## type ## _VALUE_AT(uvector, offset));  \
                        ^~~~
proc.c:1625:5: note: in expansion of macro 'GET_UVECTOR_ELEMENT_AS'
     GET_UVECTOR_ELEMENT_AS(UINT64);
     ^~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1494: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:1378:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
proc.c:1597:24: note: in expansion of macro 'GRN_FLOAT_VALUE_AT'
                        GRN_ ## type ## _VALUE_AT(uvector, offset));  \
                        ^~~~
proc.c:1628:5: note: in expansion of macro 'GET_UVECTOR_ELEMENT_AS'
     GET_UVECTOR_ELEMENT_AS(FLOAT);
     ^~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1492: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:1370:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
../include/groonga/groonga.h:1495:27: note: in expansion of macro 'GRN_INT64_VALUE_AT'
 #define GRN_TIME_VALUE_AT GRN_INT64_VALUE_AT
                           ^~~~~~~~~~~~~~~~~~
proc.c:1597:24: note: in expansion of macro 'GRN_TIME_VALUE_AT'
                        GRN_ ## type ## _VALUE_AT(uvector, offset));  \
                        ^~~~
proc.c:1631:5: note: in expansion of macro 'GET_UVECTOR_ELEMENT_AS'
     GET_UVECTOR_ELEMENT_AS(TIME);
     ^~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1496: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:1383:26: note: in definition of macro 'GRN_RECORD_SET'
   grn_id _val = (grn_id)(val);\
                          ^~~
proc.c:1597:24: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
                        GRN_ ## type ## _VALUE_AT(uvector, offset));  \
                        ^~~~
proc.c:1634: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:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:1713: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:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:1803: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:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:1989: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:1477: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:1383:26: note: in definition of macro 'GRN_RECORD_SET'
   grn_id _val = (grn_id)(val);\
                          ^~~
proc.c:2743: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
proc.c:2875:9: note: in expansion of macro 'GRN_TIME_VALUE'
         GRN_TIME_VALUE(data->max) - GRN_TIME_VALUE(data->min);
         ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
proc.c:2875: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:1491: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:3161: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:1496: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:3244: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:1496: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:3287: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:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:3290:31: note: in expansion of macro 'GRN_RECORD_VALUE'
               if (value_id == GRN_RECORD_VALUE(&record_value)) {
                               ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1496: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:3304: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:3457:21: note: in expansion of macro 'GRN_INT32_VALUE'
       real_offset = GRN_INT32_VALUE(&int32_value);
                     ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:3472: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_bulk':
rset.c:59: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:1473: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:60:25: note: in expansion of macro 'GRN_INT64_VALUE'
     int64_t value_raw = GRN_INT64_VALUE(value_int64);
                         ^~~~~~~~~~~~~~~
rset.c:62:9: warning: cast increases required alignment of target type [-Wcast-align]
       *((int64_t *)values) = value_raw;
         ^
rset.c:67: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:1473: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:68:25: note: in expansion of macro 'GRN_INT64_VALUE'
     int64_t value_raw = GRN_INT64_VALUE(value_int64);
                         ^~~~~~~~~~~~~~~
rset.c:70: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:1473: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:75:25: note: in expansion of macro 'GRN_INT64_VALUE'
     int64_t value_raw = GRN_INT64_VALUE(value_int64);
                         ^~~~~~~~~~~~~~~
rset.c:76:7: warning: cast increases required alignment of target type [-Wcast-align]
     *((int64_t *)values) += value_raw;
       ^
rset.c:80:31: warning: cast increases required alignment of target type [-Wcast-align]
     double *current_average = (double *)values;
                               ^
rset.c:81:40: warning: cast increases required alignment of target type [-Wcast-align]
     uint64_t *n_values = (uint64_t *)(((double *)values) + 1);
                                        ^
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:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
rset.c:82:24: note: in expansion of macro 'GRN_FLOAT_VALUE'
     double value_raw = GRN_FLOAT_VALUE(value_float);
                        ^~~~~~~~~~~~~~~
rset.c: In function 'grn_rset_recinfo_get_max_':
rset.c:190: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:245: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:303: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:364: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
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
/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 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
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
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:1475: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:1475: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 snip.lo snip.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 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 snip.c  -fPIC -DPIC -o .libs/snip.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 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;
      ^
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);
                        ^
/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_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:2696: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:2704: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:2714:19: warning: cast increases required alignment of target type [-Wcast-align]
             idp = (grn_id *)GRN_BULK_HEAD(&buf);
                   ^
str.c:2741: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:18:
str.c: In function 'grn_text_otoj':
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
str.c:2805: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:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
str.c:2808: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
str.c:2811: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:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
str.c:2814: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:1473: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:2817: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:1474: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:2820: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:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
str.c:2823: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:2827:23: warning: cast increases required alignment of target type [-Wcast-align]
         double dv = *((int64_t *)GRN_BULK_HEAD(obj));
                       ^
str.c:2835: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:18:
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
str.c:2849:21: note: in expansion of macro 'GRN_RECORD_VALUE'
         grn_id id = GRN_RECORD_VALUE(obj);
                     ^~~~~~~~~~~~~~~~
str.c:2850: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:18:
../include/groonga/groonga.h:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
str.c:2892:23: note: in expansion of macro 'GRN_RECORD_VALUE'
           grn_id id = GRN_RECORD_VALUE(obj);
                       ^~~~~~~~~~~~~~~~
str.c:2952: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:2952: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:2954:29: warning: cast increases required alignment of target type [-Wcast-align]
         grn_obj **columns = (grn_obj **)GRN_BULK_HEAD(&format->columns);
                             ^
str.c:3032:21: warning: cast increases required alignment of target type [-Wcast-align]
         grn_id *v = (grn_id *)GRN_BULK_HEAD(obj),
                     ^
str.c:3033: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:18:
../include/groonga/groonga.h:1497: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:3118:17: note: in expansion of macro 'GRN_PTR_VALUE_AT'
         value = GRN_PTR_VALUE_AT(obj, i);
                 ^~~~~~~~~~~~~~~~
str.c:3130: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
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:1497: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:1471: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:1497: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:1497: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 tokenizer.lo tokenizer.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 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:1472: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:1472: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:1478:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
util.c:433: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:1497: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:454: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:748: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
util.c:1109: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:1480:25: warning: cast increases required alignment of target type [-Wcast-align]
   grn_geo_point *_val = (grn_geo_point *)GRN_BULK_HEAD(obj);\
                         ^
util.c:1139: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:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
util.c:1184: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:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
util.c:1205: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:1477:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
util.c:1248: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
/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
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_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:1496: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370: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:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1370: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:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374: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:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374: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:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374: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:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374: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:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374: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:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374: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:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1374: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:1475: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:1378: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:1475: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:1378: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:1469: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:1471: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:1473: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:1470: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:1472: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:1474: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:1475: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:3910:1: warning: const/copy propagation disabled: 24920 basic blocks and 111691 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:1477: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:1471: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:1471: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:1471: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:1471: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:1471: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:1471: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:1471: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:1471: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:1471: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:1471: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:1475: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:1477: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:1477: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:1477: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:1477: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1476: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:1472: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1476: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:1477: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:1477: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 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 time.c  -fPIC -DPIC -o .libs/time.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 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 number.c  -fPIC -DPIC -o .libs/number.o
In file included from ../../include/groonga.h:22:0,
                 from ../../include/groonga/plugin.h:23,
                 from vector.c:23:
vector.c: In function 'func_vector_slice':
../../include/groonga/groonga.h:1471: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:1473: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:1473: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:1471: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:1473: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:1473: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:1497: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:1488: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:1511: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:1489: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:1514: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:1490: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:1518: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:1491: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:1521: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:1492: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:1525: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:1493: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:1529: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:1494: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:1533: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:1492: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:1525:40: note: in definition of macro 'GRN_INT64_PUT'
   long long int _val = (long long int)(val);\
                                        ^~~
../../include/groonga/groonga.h:1495: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 string.c:23:
string.c: In function 'func_string_substring':
../../include/groonga/groonga.h:1471: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:1473: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:1473: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:1471: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:1473: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:1473: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 time.c:23:
time.c: In function 'func_time_classify_raw':
../../include/groonga/groonga.h:1472: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1476: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:1469: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:1469: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:1470: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:1470: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:1471: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:1471: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:1472: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:1472: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:1473: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:1473: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:1474: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:1474: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:1475: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:1475: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
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
/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:1475: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:1475: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 'get_caller_index_info':
../../include/groonga/groonga.h:1477: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:145:34: note: in expansion of macro 'GRN_RECORD_VALUE'
     caller_index_info->term_id = GRN_RECORD_VALUE(variable);
                                  ^~~~~~~~~~~~~~~~
index_column.c: In function 'func_index_column_source_records':
index_column.c:298:41: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
                                         (void **)&value);
                                         ^
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:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
math.c:77:48: note: in expansion of macro 'GRN_INT16_VALUE'
       to_type abs_number_raw = (to_type)(func)(getter(number));         \
                                                ^~~~~~
math.c:90: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:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../../include/groonga/groonga.h:1358: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:93: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
math.c:77:48: note: in expansion of macro 'GRN_INT32_VALUE'
       to_type abs_number_raw = (to_type)(func)(getter(number));         \
                                                ^~~~~~
math.c:96: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:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../../include/groonga/groonga.h:1366: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:99:5: note: in expansion of macro 'ABS_AS_IS'
     ABS_AS_IS(GRN_DB_UINT32, uint32_t, GRN_UINT32_VALUE, GRN_UINT32_SET);
     ^~~~~~~~~
../../include/groonga/groonga.h:1473: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:77:48: note: in expansion of macro 'GRN_INT64_VALUE'
       to_type abs_number_raw = (to_type)(func)(getter(number));         \
                                                ^~~~~~
math.c:102: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:1474:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../../include/groonga/groonga.h:1374: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:105: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:1475:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
math.c:77:48: note: in expansion of macro 'GRN_FLOAT_VALUE'
       to_type abs_number_raw = (to_type)(func)(getter(number));         \
                                                ^~~~~~
math.c:108:5: note: in expansion of macro 'ABS_CONVERT_TYPE'
     ABS_CONVERT_TYPE(fabs, GRN_DB_FLOAT, double, GRN_FLOAT_VALUE, GRN_FLOAT_SET);
     ^~~~~~~~~~~~~~~~
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" )
/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
/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
/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
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 index_column.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/functions index_column.lo  ../../lib/libgroonga.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/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 "math.la" && ln -s "../math.la" "math.la" )
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/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 "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:1471: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:1472: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1476: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:1477: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:1471: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:1472: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1476: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:1477: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:1471: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:1472: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1476: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:1477: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:1471: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:1472: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1476: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:1477: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:1471: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:1472: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1476: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:1477: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:1471: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:1472: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1476: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:1477: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:1471: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:1471: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:1471: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:1471: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:1472: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1476: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:1477: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:1471: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:1472: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1476: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:1477: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:1471: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:1472: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1476: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:1477: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:1471: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:1472: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1476: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:1477: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:1471: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:1472: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1476: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:1477: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: 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
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
/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.8 && make build)
make[5]: Entering directory '/<<PKGBUILDDIR>>/vendor/nginx-1.13.8'
make -f objs/Makefile
make[6]: Entering directory '/<<PKGBUILDDIR>>/vendor/nginx-1.13.8'
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/nginx.c: In function 'main':
src/core/nginx.c:312: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:315: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:320: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:335: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:392: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:396: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:432: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:434: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:436: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:437: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:440: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:446: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:519: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_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 'ngx_exec_new_binary':
src/core/nginx.c:654:14: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     ctx.name = "new binary process";
              ^
src/core/nginx.c:686:14: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     env[n++] = "SPARE=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
              ^
src/core/nginx.c:707: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:1114: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:1201: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:1283:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/nginx.c:1303: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:1326: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:1422: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:1475:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/nginx.c:1488: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:1507: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
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";
                ^
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_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
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_slab.o \
	src/core/ngx_slab.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_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
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" };
                                                               ^~~~~
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_cycle.o \
	src/core/ngx_cycle.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,
           ^
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
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);
           ^~~~~~~~~~~~~~~~~~~~
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_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:1033:10: warning: cast increases required alignment of target type [-Wcast-align]
     fp = (ngx_flag_t *) (p + cmd->offset);
          ^
src/core/ngx_conf_file.c:1036: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:1072:13: warning: cast increases required alignment of target type [-Wcast-align]
     field = (ngx_str_t *) (p + cmd->offset);
             ^
src/core/ngx_conf_file.c:1075: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:1100: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:1137: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:1175:10: warning: cast increases required alignment of target type [-Wcast-align]
     np = (ngx_int_t *) (p + cmd->offset);
          ^
src/core/ngx_conf_file.c:1178:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_conf_file.c:1184: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:1206:10: warning: cast increases required alignment of target type [-Wcast-align]
     sp = (size_t *) (p + cmd->offset);
          ^
src/core/ngx_conf_file.c:1208:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_conf_file.c:1215: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:1237:10: warning: cast increases required alignment of target type [-Wcast-align]
     op = (off_t *) (p + cmd->offset);
          ^
src/core/ngx_conf_file.c:1239:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_conf_file.c:1246: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:1268:11: warning: cast increases required alignment of target type [-Wcast-align]
     msp = (ngx_msec_t *) (p + cmd->offset);
           ^
src/core/ngx_conf_file.c:1270:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_conf_file.c:1277: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:1299:10: warning: cast increases required alignment of target type [-Wcast-align]
     sp = (time_t *) (p + cmd->offset);
          ^
src/core/ngx_conf_file.c:1301:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_conf_file.c:1308: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:1329:12: warning: cast increases required alignment of target type [-Wcast-align]
     bufs = (ngx_bufs_t *) (p + cmd->offset);
            ^
src/core/ngx_conf_file.c:1331:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
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:1343: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:1359:10: warning: cast increases required alignment of target type [-Wcast-align]
     np = (ngx_uint_t *) (p + cmd->offset);
          ^
src/core/ngx_conf_file.c:1362: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:1397:10: warning: cast increases required alignment of target type [-Wcast-align]
     np = (ngx_uint_t *) (p + cmd->offset);
          ^
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;
               ^
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
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
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
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_posted.o \
	src/event/ngx_event_posted.c
src/event/ngx_event_timer.c: In function 'ngx_event_expire_timers':
src/event/ngx_event_timer.c:76:14: warning: cast increases required alignment of target type [-Wcast-align]
         ev = (ngx_event_t *) ((char *) node - offsetof(ngx_event_t, timer));
              ^
src/event/ngx_event_timer.c: In function 'ngx_event_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));
              ^
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";
                ^~~~~~~~~~~~~~
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
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/event/ngx_event_pipe.o \
	src/event/ngx_event_pipe.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_time.o \
	src/os/unix/ngx_time.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_errno.o \
	src/os/unix/ngx_errno.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_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_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);
           ^~~~~~~~~~~~~~~~~~~~
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);
           ^~~~~~~~~~~~~~~~~~~~
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");
                                          ^~~~~~~~~~~~~~~~~
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_shmem.o \
	src/os/unix/ngx_shmem.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.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:338:12: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     action = "";
            ^
src/os/unix/ngx_process.c:348:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", shutting down";
                    ^
src/os/unix/ngx_process.c:354:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", exiting";
                    ^
src/os/unix/ngx_process.c:360:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                 action = ", stop accepting connections";
                        ^
src/os/unix/ngx_process.c:366:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", reconfiguring";
                    ^
src/os/unix/ngx_process.c:371:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", reopening logs";
                    ^
src/os/unix/ngx_process.c:384:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                 action = ", ignoring";
                        ^
src/os/unix/ngx_process.c:390:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", changing binary";
                    ^
src/os/unix/ngx_process.c:420:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", shutting down";
                    ^
src/os/unix/ngx_process.c:426:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", exiting";
                    ^
src/os/unix/ngx_process.c:431:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", reopening logs";
                    ^
src/os/unix/ngx_process.c:437: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:522: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:600: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:616: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:60: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:64: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:129: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:242: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:360: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:64: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:398: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:64: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:415: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:64: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:648: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:737: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:761: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:797: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");
                                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c: In function 'ngx_ssl_stapling_certificate':
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_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.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_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.c: In function 'ngx_ssl_handshake':
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.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_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.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_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.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_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.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");
                                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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,
                ^~~~~~~~~~~~~
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_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.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_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.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_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/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/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";
               ^
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
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";
                   ^
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:3486:25: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         types_hash.name = "types_hash";
                         ^
src/http/ngx_http_core_module.c:3528:25: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         types_hash.name = "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_special_response.o \
	src/http/ngx_http_special_response.c
src/http/ngx_http_core_module.c: In function 'ngx_http_core_root':
src/http/ngx_http_core_module.c:4200: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:4322: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:4414:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/ngx_http_core_module.c:4512: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:4524:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/ngx_http_core_module.c:4536: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:4672: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:4756:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/ngx_http_core_module.c:4764:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "invalid value";
                ^~~~~~~~~~~~~~~
src/http/ngx_http_core_module.c:4774: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:4787: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:4804: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:4932: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_variables.c: In function 'ngx_http_variable_sent_connection':
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_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_variables.c: In function 'ngx_http_variable_request_id':
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");
                                                       ^~~~~~~~~~~~~~~~~~~~~
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_variables.c: In function 'ngx_http_variables_init_vars':
src/http/ngx_http_variables.c:2692:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "variables_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_upstream.o \
	src/http/ngx_http_upstream.c
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_script.c:512:13: warning: cast increases required alignment of target type [-Wcast-align]
     while (*(uintptr_t *) e.ip) {
             ^
src/http/ngx_http_script.c:513:18: warning: cast increases required alignment of target type [-Wcast-align]
         lcode = *(ngx_http_script_len_code_pt *) e.ip;
                  ^
src/http/ngx_http_script.c:527:13: warning: cast increases required alignment of target type [-Wcast-align]
     while (*(uintptr_t *) e.ip) {
             ^
src/http/ngx_http_script.c:528:17: warning: cast increases required alignment of target type [-Wcast-align]
         code = *(ngx_http_script_code_pt *) e.ip;
                 ^
src/http/ngx_http_script.c: In function 'ngx_http_script_copy_len_code':
src/http/ngx_http_script.c:729:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_copy_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_copy_code':
src/http/ngx_http_script.c:743:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_copy_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_copy_var_len_code':
src/http/ngx_http_script.c:810:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_var_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_copy_var_code':
src/http/ngx_http_script.c:836:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_var_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_regex_start_code':
src/http/ngx_http_script.c:919:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_regex_code_t *) e->ip;
            ^
src/http/ngx_http_script.c:1038:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) le.ip) {
                 ^
src/http/ngx_http_script.c:1039:22: warning: cast increases required alignment of target type [-Wcast-align]
             lcode = *(ngx_http_script_len_code_pt *) le.ip;
                      ^
src/http/ngx_http_script.c: In function 'ngx_http_script_regex_end_code':
src/http/ngx_http_script.c:1072:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_regex_end_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_copy_capture_len_code':
src/http/ngx_http_script.c:1215:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_copy_capture_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_copy_capture_code':
src/http/ngx_http_script.c:1253:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_copy_capture_code_t *) e->ip;
            ^
src/http/ngx_http_script.c:1269:22: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'u_char * {aka unsigned char *}' [-Wbad-function-cast]
             e->pos = (u_char *) ngx_escape_uri(pos, &p[cap[n]],
                      ^
src/http/ngx_http_script.c: In function 'ngx_http_script_full_name_len_code':
src/http/ngx_http_script.c:1318:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_full_name_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_full_name_code':
src/http/ngx_http_script.c:1334:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_full_name_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_return_code':
src/http/ngx_http_script.c:1362:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_return_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_if_code':
src/http/ngx_http_script.c:1392:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_if_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_file_code':
src/http/ngx_http_script.c:1484:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_file_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_complex_value_code':
src/http/ngx_http_script.c: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_round_robin.o \
	src/http/ngx_http_upstream_round_robin.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";
                                ^
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:6083:19: warning: cast increases required alignment of target type [-Wcast-align]
             ccf = (ngx_core_conf_t *) ngx_get_conf(cf->cycle->conf_ctx,
                   ^
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_param_set_slot':
src/http/ngx_http_upstream.c:6167: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:6394: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
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_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);
           ^~~~~~~~~~~~~~
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
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/ngx_http_postpone_filter_module.o \
	src/http/ngx_http_postpone_filter_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -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_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_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_userid_filter_module.c: In function 'ngx_http_userid_create_uid':
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_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_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 \"=\"";
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/modules/ngx_http_headers_filter_module.c: In function 'ngx_http_parse_expires':
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_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);
               ^
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
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
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_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
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_static_module.o \
	src/http/modules/ngx_http_static_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_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";
                ^~~~~~~~~~~~~~~~~~~~~~~~
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
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";
                 ^
src/http/modules/ngx_http_autoindex_module.c: In function 'ngx_http_autoindex_html':
src/http/modules/ngx_http_autoindex_module.c:464: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:464: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:464: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:464: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:464: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:464: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:465: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:465: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:465: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:465: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:465: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:465: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:525: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:527: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:579: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:594: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:751: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:913: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,
                       ^
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_index_module.c: In function 'ngx_http_index_handler':
src/http/modules/ngx_http_index_module.c:152:21: warning: cast increases required alignment of target type [-Wcast-align]
             while (*(uintptr_t *) e.ip) {
                     ^
src/http/modules/ngx_http_index_module.c:153:26: warning: cast increases required alignment of target type [-Wcast-align]
                 lcode = *(ngx_http_script_len_code_pt *) e.ip;
                          ^
src/http/modules/ngx_http_index_module.c:184:21: warning: cast increases required alignment of target type [-Wcast-align]
             while (*(uintptr_t *) e.ip) {
                     ^
src/http/modules/ngx_http_index_module.c:185:25: warning: cast increases required alignment of target type [-Wcast-align]
                 code = *(ngx_http_script_code_pt *) e.ip;
                         ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -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
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_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;
                ^
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;
              ^
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':
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_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:1156:15: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'ngx_http_variable_value_t * {aka struct <anonymous> *}' [-Wbad-function-cast]
         old = (ngx_http_variable_value_t *)
               ^
src/http/modules/ngx_http_geo_module.c:1194:15: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'ngx_http_variable_value_t * {aka struct <anonymous> *}' [-Wbad-function-cast]
         old = (ngx_http_variable_value_t *)
               ^
src/http/modules/ngx_http_map_module.c: In function 'ngx_http_map':
src/http/modules/ngx_http_map_module.c:439:23: warning: cast increases required alignment of target type [-Wcast-align]
                 cvp = (ngx_http_complex_value_t *) vp[i]->data;
                       ^
src/http/modules/ngx_http_geo_module.c: In function 'ngx_http_geo_include_binary_base':
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_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";
               ^
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_proxy_module.o \
	src/http/modules/ngx_http_proxy_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_fastcgi_module.o \
	src/http/modules/ngx_http_fastcgi_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -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
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: In function 'ngx_http_proxy_create_request':
src/http/modules/ngx_http_proxy_module.c:1239:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) le.ip) {
                 ^
src/http/modules/ngx_http_proxy_module.c:1240: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:1259:13: warning: cast increases required alignment of target type [-Wcast-align]
     while (*(uintptr_t *) le.ip) {
             ^
src/http/modules/ngx_http_proxy_module.c:1261: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:1264: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:1265: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:1372:13: warning: cast increases required alignment of target type [-Wcast-align]
     while (*(uintptr_t *) le.ip) {
             ^
src/http/modules/ngx_http_proxy_module.c:1374: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:1377: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:1378: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:1385:21: warning: cast increases required alignment of target type [-Wcast-align]
             while (*(uintptr_t *) e.ip) {
                     ^
src/http/modules/ngx_http_proxy_module.c:1386: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:1396: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:1401:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) e.ip) {
                 ^
src/http/modules/ngx_http_proxy_module.c:1402: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:1459:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) e.ip) {
                 ^
src/http/modules/ngx_http_proxy_module.c:1460: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:2578: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:2594: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:3325: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:3583: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:3605:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_proxy_module.c: In function 'ngx_http_proxy_store':
src/http/modules/ngx_http_proxy_module.c:4079:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_proxy_module.c:4091: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:4136:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_proxy_module.c:4145: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:4194: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:4223: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
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
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_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:503: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
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
/<<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_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.8'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/vendor/nginx-1.13.8'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/src/httpd'
make[4]: Entering directory '/<<PKGBUILDDIR>>/src'
gcc -DHAVE_CONFIG_H -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -I.. -I../include -I../lib   -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../vendor/mruby-source/include  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476: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:1497: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476: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);
                                                  ^~~~~~~~~~~~~~
groonga_benchmark.c: In function 'main':
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1476: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());
               ^~~~~~~~~~~~~~
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.c: In function 'request_timer_register':
groonga.c:610: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:618:23: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
   grn_id id = (grn_id)(uint64_t)timer_id;
                       ^
groonga.c: In function 'do_mbreq':
groonga.c:1923:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:1955: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:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga.c:1965:20: note: in expansion of macro 'GRN_UINT32_VALUE'
           expire = GRN_UINT32_VALUE(&expire_buf);
                    ^~~~~~~~~~~~~~~~
groonga.c:1923:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:1971:11: note: in expansion of macro 'GRN_MSG_MBRES'
           GRN_MSG_MBRES({
           ^~~~~~~~~~~~~
groonga.c:1923:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:1978:11: note: in expansion of macro 'GRN_MSG_MBRES'
           GRN_MSG_MBRES({
           ^~~~~~~~~~~~~
groonga.c:1981:14: warning: cast increases required alignment of target type [-Wcast-align]
             ((grn_msg *)re)->header.cas = GRN_UINT64_VALUE(&cas_buf);
              ^
groonga.c:1924:5: note: in definition of macro 'GRN_MSG_MBRES'
     block\
     ^~~~~~
   }\
      
../include/groonga/groonga.h:1474: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:1924:5: note: in definition of macro 'GRN_MSG_MBRES'
     block\
     ^~~~~~
   }\
      
groonga.c:1981:43: note: in expansion of macro 'GRN_UINT64_VALUE'
             ((grn_msg *)re)->header.cas = GRN_UINT64_VALUE(&cas_buf);
                                           ^~~~~~~~~~~~~~~~
groonga.c:2003: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:2004:33: warning: cast increases required alignment of target type [-Wcast-align]
       uint32_t expire = ntohl(*((uint32_t *)(body + 4)));
                                 ^
groonga.c:1923:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2018:9: note: in expansion of macro 'GRN_MSG_MBRES'
         GRN_MSG_MBRES({
         ^~~~~~~~~~~~~
groonga.c:1923:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2024:13: note: in expansion of macro 'GRN_MSG_MBRES'
             GRN_MSG_MBRES({
             ^~~~~~~~~~~~~
groonga.c:1923:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2050:15: note: in expansion of macro 'GRN_MSG_MBRES'
               GRN_MSG_MBRES({
               ^~~~~~~~~~~~~
groonga.c:2051:18: warning: cast increases required alignment of target type [-Wcast-align]
                 ((grn_msg *)re)->header.cas = cas_id;
                  ^
groonga.c:1924: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:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga.c:2064:23: note: in expansion of macro 'GRN_UINT32_VALUE'
             oexpire = GRN_UINT32_VALUE(&uint32_buf);
                       ^~~~~~~~~~~~~~~~
groonga.c:1923:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2071:17: note: in expansion of macro 'GRN_MSG_MBRES'
                 GRN_MSG_MBRES({
                 ^~~~~~~~~~~~~
groonga.c:1923:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2078: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:1474: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:2089:34: note: in expansion of macro 'GRN_UINT64_VALUE'
               if (header->cas != GRN_UINT64_VALUE(&cas_buf)) {
                                  ^~~~~~~~~~~~~~~~
groonga.c:1923:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2090:17: note: in expansion of macro 'GRN_MSG_MBRES'
                 GRN_MSG_MBRES({
                 ^~~~~~~~~~~~~
groonga.c:1923:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2116:17: note: in expansion of macro 'GRN_MSG_MBRES'
                 GRN_MSG_MBRES({
                 ^~~~~~~~~~~~~
groonga.c:2117:20: warning: cast increases required alignment of target type [-Wcast-align]
                   ((grn_msg *)re)->header.cas = cas_id;
                    ^
groonga.c:1924:5: note: in definition of macro 'GRN_MSG_MBRES'
     block\
     ^~~~~~
   }\
      
groonga.c:1923:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2138:9: note: in expansion of macro 'GRN_MSG_MBRES'
         GRN_MSG_MBRES({
         ^~~~~~~~~~~~~
groonga.c:1923:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2143: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:2162:33: warning: cast increases required alignment of target type [-Wcast-align]
       uint32_t expire = ntohl(*((uint32_t *)(body + 16)));
                                 ^
groonga.c:1923:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2172: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:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga.c:2189:21: note: in expansion of macro 'GRN_UINT32_VALUE'
           oexpire = GRN_UINT32_VALUE(&uint32_buf);
                     ^~~~~~~~~~~~~~~~
groonga.c:1923:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2194:15: note: in expansion of macro 'GRN_MSG_MBRES'
               GRN_MSG_MBRES({
               ^~~~~~~~~~~~~
groonga.c:1923:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2222:9: note: in expansion of macro 'GRN_MSG_MBRES'
         GRN_MSG_MBRES({
         ^~~~~~~~~~~~~
groonga.c:2225:28: warning: cast increases required alignment of target type [-Wcast-align]
           grn_hton(&delta, (uint64_t *)GRN_BULK_HEAD(re), 8);
                            ^
groonga.c:1924:5: note: in definition of macro 'GRN_MSG_MBRES'
     block\
     ^~~~~~
   }\
      
groonga.c:2225: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:2242:26: warning: cast increases required alignment of target type [-Wcast-align]
         expire = ntohl(*((uint32_t *)(body)));
                          ^
groonga.c:1923:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2264:9: note: in expansion of macro 'GRN_MSG_MBRES'
         GRN_MSG_MBRES({
         ^~~~~~~~~~~~~
groonga.c:1923:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2274:5: note: in expansion of macro 'GRN_MSG_MBRES'
     GRN_MSG_MBRES({
     ^~~~~~~~~~~~~
groonga.c:1923:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2289: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:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga.c:2298:18: note: in expansion of macro 'GRN_UINT32_VALUE'
         expire = GRN_UINT32_VALUE(&uint32_buf);
                  ^~~~~~~~~~~~~~~~
groonga.c:1923:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2302:11: note: in expansion of macro 'GRN_MSG_MBRES'
           GRN_MSG_MBRES({
           ^~~~~~~~~~~~~
groonga.c:1923:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2309:11: note: in expansion of macro 'GRN_MSG_MBRES'
           GRN_MSG_MBRES({
           ^~~~~~~~~~~~~
groonga.c:2313:14: warning: cast increases required alignment of target type [-Wcast-align]
             ((grn_msg *)re)->header.cas = GRN_UINT64_VALUE(&uint64_buf);
              ^
groonga.c:1924:5: note: in definition of macro 'GRN_MSG_MBRES'
     block\
     ^~~~~~
   }\
      
../include/groonga/groonga.h:1474: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:1924:5: note: in definition of macro 'GRN_MSG_MBRES'
     block\
     ^~~~~~
   }\
      
groonga.c:2313:43: note: in expansion of macro 'GRN_UINT64_VALUE'
             ((grn_msg *)re)->header.cas = GRN_UINT64_VALUE(&uint64_buf);
                                           ^~~~~~~~~~~~~~~~
groonga.c:1923: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:1923:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2345:9: note: in expansion of macro 'GRN_MSG_MBRES'
         GRN_MSG_MBRES({
         ^~~~~~~~~~~~~
groonga.c:1923:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2354:7: note: in expansion of macro 'GRN_MSG_MBRES'
       GRN_MSG_MBRES({
       ^~~~~~~~~~~~~
groonga.c:1923:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2365:5: note: in expansion of macro 'GRN_MSG_MBRES'
     GRN_MSG_MBRES({
     ^~~~~~~~~~~~~
groonga.c: In function 'h_worker':
groonga.c:2437:14: warning: cast increases required alignment of target type [-Wcast-align]
     hc.msg = (grn_msg *)msg;
              ^
groonga.c: In function 'h_handler':
groonga.c:2458:19: warning: cast increases required alignment of target type [-Wcast-align]
   grn_com *com = ((grn_msg *)msg)->u.peer;
                   ^
groonga.c:2467: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:2536: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:2603: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:2621:19: warning: cast increases required alignment of target type [-Wcast-align]
   grn_com *com = ((grn_msg *)msg)->u.peer;
                   ^
groonga.c:2638:33: warning: cast increases required alignment of target type [-Wcast-align]
     edge = grn_edges_add(ctx, &((grn_msg *)msg)->edge_id, &added);
                                 ^
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: In function 'send_ready_notify':
groonga.c:806: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 grndb grndb.o ../lib/libgroonga.la -lmsgpackc -lz -ldl -lpthread -lm  
/bin/bash ../libtool  --tag=CXX   --mode=link g++  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -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.8 && make build)
make[4]: Entering directory '/<<PKGBUILDDIR>>/vendor/nginx-1.13.8'
make -f objs/Makefile
make[5]: Entering directory '/<<PKGBUILDDIR>>/vendor/nginx-1.13.8'
make[5]: Nothing to be done for 'build'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/vendor/nginx-1.13.8'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/vendor/nginx-1.13.8'
make[4]: Entering directory '/<<PKGBUILDDIR>>/src/httpd'
(cd ../../vendor/nginx-1.13.8 && make install)
make[5]: Entering directory '/<<PKGBUILDDIR>>/vendor/nginx-1.13.8'
make -f objs/Makefile install
make[6]: Entering directory '/<<PKGBUILDDIR>>/vendor/nginx-1.13.8'
test -d '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd' || mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd'
test -d '/<<PKGBUILDDIR>>/debian/tmp/usr/sbin' \
	|| mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/sbin'
test ! -f '/<<PKGBUILDDIR>>/debian/tmp/usr/sbin/groonga-httpd' \
	|| mv '/<<PKGBUILDDIR>>/debian/tmp/usr/sbin/groonga-httpd' \
		'/<<PKGBUILDDIR>>/debian/tmp/usr/sbin/groonga-httpd.old'
cp objs/nginx '/<<PKGBUILDDIR>>/debian/tmp/usr/sbin/groonga-httpd'
test -d '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd' \
	|| mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd'
cp conf/koi-win '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd'
cp conf/koi-utf '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd'
cp conf/win-utf '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd'
test -f '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/mime.types' \
	|| cp conf/mime.types '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd'
cp conf/mime.types '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/mime.types.default'
test -f '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/fastcgi_params' \
	|| cp conf/fastcgi_params '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd'
cp conf/fastcgi_params \
	'/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/fastcgi_params.default'
test -f '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/fastcgi.conf' \
	|| cp conf/fastcgi.conf '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd'
cp conf/fastcgi.conf '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/fastcgi.conf.default'
test -f '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/uwsgi_params' \
	|| cp conf/uwsgi_params '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd'
cp conf/uwsgi_params \
	'/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/uwsgi_params.default'
test -f '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/scgi_params' \
	|| cp conf/scgi_params '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd'
cp conf/scgi_params \
	'/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/scgi_params.default'
test -f '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/groonga-httpd.conf' \
	|| cp conf/nginx.conf '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/groonga-httpd.conf'
cp conf/nginx.conf '/<<PKGBUILDDIR>>/debian/tmp/etc/groonga/httpd/nginx.conf.default'
test -d '/<<PKGBUILDDIR>>/debian/tmp/var/run/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.8'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/vendor/nginx-1.13.8'
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-benchmark debian/groonga-bin/usr/bin/groonga 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-benchmark debian/groonga-bin/usr/bin/groonga 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-benchmark debian/groonga-bin/usr/bin/groonga debian/groonga-bin/usr/bin/grndb were not linked against libdl.so.2 (they use none of the library's symbols)
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/groonga-bin/usr/bin/groonga-benchmark debian/groonga-bin/usr/bin/groonga 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-benchmark debian/groonga-bin/usr/bin/groonga debian/groonga-bin/usr/bin/grndb were not linked against libstdc++.so.6 (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-create-dataset debian/groonga-plugin-suggest/usr/bin/groonga-suggest-learner debian/groonga-plugin-suggest/usr/bin/groonga-suggest-httpd 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-plugin-suggest/usr/bin/groonga-suggest-create-dataset debian/groonga-plugin-suggest/usr/bin/groonga-suggest-learner debian/groonga-plugin-suggest/usr/bin/groonga-suggest-httpd 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-create-dataset debian/groonga-plugin-suggest/usr/bin/groonga-suggest-learner debian/groonga-plugin-suggest/usr/bin/groonga-suggest-httpd 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-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_8.0.0-1_armhf.deb'.
dpkg-deb: building package 'groonga' in '../groonga_8.0.0-1_armhf.deb'.
dpkg-deb: building package 'groonga-plugin-suggest' in '../groonga-plugin-suggest_8.0.0-1_armhf.deb'.
dpkg-deb: building package 'groonga-httpd' in '../groonga-httpd_8.0.0-1_armhf.deb'.
dpkg-deb: building package 'libgroonga-dev' in '../libgroonga-dev_8.0.0-1_armhf.deb'.
dpkg-deb: building package 'groonga-tokenizer-mecab-dbgsym' in '../groonga-tokenizer-mecab-dbgsym_8.0.0-1_armhf.deb'.
dpkg-deb: building package 'groonga-plugin-suggest-dbgsym' in '../groonga-plugin-suggest-dbgsym_8.0.0-1_armhf.deb'.
dpkg-deb: building package 'groonga-token-filter-stem' in '../groonga-token-filter-stem_8.0.0-1_armhf.deb'.
dpkg-deb: building package 'groonga-token-filter-stem-dbgsym' in '../groonga-token-filter-stem-dbgsym_8.0.0-1_armhf.deb'.
dpkg-deb: building package 'groonga-bin' in '../groonga-bin_8.0.0-1_armhf.deb'.
dpkg-deb: building package 'libgroonga0' in '../libgroonga0_8.0.0-1_armhf.deb'.
dpkg-deb: building package 'groonga-httpd-dbgsym' in '../groonga-httpd-dbgsym_8.0.0-1_armhf.deb'.
dpkg-deb: building package 'groonga-bin-dbgsym' in '../groonga-bin-dbgsym_8.0.0-1_armhf.deb'.
dpkg-deb: building package 'libgroonga0-dbgsym' in '../libgroonga0-dbgsym_8.0.0-1_armhf.deb'.
 dpkg-genbuildinfo --build=any
 dpkg-genchanges --build=any -mRaspbian wandboard test autobuilder <root@raspbian.org> >../groonga_8.0.0-1_armhf.changes
dpkg-genchanges: info: binary-only arch-specific upload (source code and arch-indep packages not included)
 dpkg-source --after-build groonga-8.0.0
dpkg-buildpackage: info: binary-only upload (no source included)
--------------------------------------------------------------------------------
Build finished at 2018-02-26T11:18:29Z

Finished
--------

I: Built successfully

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


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


groonga_8.0.0-1_armhf.changes:
------------------------------

Format: 1.8
Date: Wed, 14 Feb 2018 23:35:34 +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: 8.0.0-1
Distribution: buster-staging
Urgency: medium
Maintainer: Raspbian wandboard test autobuilder <root@raspbian.org>
Changed-By: Kentaro Hayashi <hayashi@clear-code.com>
Description:
 groonga    - Fulltext search engine (metapackage for library use)
 groonga-bin - Commands for Groonga
 groonga-doc - Documentation of Groonga
 groonga-examples - Examples of Groonga
 groonga-httpd - Groonga HTTP server
 groonga-munin-plugins - munin-node plugins for Groonga
 groonga-plugin-suggest - Suggest plugin for Groonga
 groonga-server-common - Fulltext search engine (metapackage for server use)
 groonga-server-gqtp - Fulltext search engine (metapackage for GQTP server use)
 groonga-token-filter-stem - Stemming token filter for Groonga
 groonga-tokenizer-mecab - MeCab tokenizer for Groonga
 libgroonga-dev - Development files to use Groonga as a library
 libgroonga0 - Library files for Groonga
Changes:
 groonga (8.0.0-1) unstable; urgency=medium
 .
   * New upstream release.
   * debian/control
     - Bump Standards-Version, no other changes are required.
Checksums-Sha1:
 687f782eb325010ebff057ce938bda3a5be4a744 141556 groonga-bin-dbgsym_8.0.0-1_armhf.deb
 8c1cbad21561b00c5f1d43cbf7e3bcf4da591b5a 253532 groonga-bin_8.0.0-1_armhf.deb
 1ed9ae3cfbc133150e1dc1b63b962bdcc5485633 2079484 groonga-httpd-dbgsym_8.0.0-1_armhf.deb
 909a2a5d6ea780e8d02627241991c71fa85c6c91 318448 groonga-httpd_8.0.0-1_armhf.deb
 ad07869af5fd36575208fbc62efe94d01815755d 123992 groonga-plugin-suggest-dbgsym_8.0.0-1_armhf.deb
 4d8346b67382b307f67919597fb3ba6ce5066b60 37420 groonga-plugin-suggest_8.0.0-1_armhf.deb
 64c086568ad264b04088b485270bd689626db775 10080 groonga-token-filter-stem-dbgsym_8.0.0-1_armhf.deb
 163e03f141810654db820d94b32ea96e02ff8928 12176 groonga-token-filter-stem_8.0.0-1_armhf.deb
 cd11dc6e0b80d920a969e01cb52de58931139580 13724 groonga-tokenizer-mecab-dbgsym_8.0.0-1_armhf.deb
 45da4d9368bd587b1ba26dd0de5f9a2ea7ab2b19 13820 groonga-tokenizer-mecab_8.0.0-1_armhf.deb
 436113f31c3a0a6b052d5981592db263cac83bd3 9113 groonga_8.0.0-1_armhf.buildinfo
 dbef4e9cef38e0e807e775270e3b2cf7d28a9cdb 9100 groonga_8.0.0-1_armhf.deb
 02da984d75cfe3fb5117465d429783a9b12cff6e 33976 libgroonga-dev_8.0.0-1_armhf.deb
 ce0ace5bd5df5525c6264e9470d77fb42f07f9ca 3952816 libgroonga0-dbgsym_8.0.0-1_armhf.deb
 7371bd365f88fe2dbdb511d5257e6b10a2cfa1a3 1330124 libgroonga0_8.0.0-1_armhf.deb
Checksums-Sha256:
 cab8e0177fdc2aeeadb994ba9aa412a2620129984716a73c42c6200bbb25a2c0 141556 groonga-bin-dbgsym_8.0.0-1_armhf.deb
 313d1aa97475b0f2af0d0118ebc567173c39fed8a8dc07cdabd1bb8886031516 253532 groonga-bin_8.0.0-1_armhf.deb
 eb5103f29f009bd9dec147fcfe9f32b88730edd914bd45b5a3cf2b7f094373ef 2079484 groonga-httpd-dbgsym_8.0.0-1_armhf.deb
 57a458321692aa093618f2d920784fbee852aad44b4a266e6ea9467feae339bc 318448 groonga-httpd_8.0.0-1_armhf.deb
 0f78d8f7bbb8f4608b1ff5d8cc7aaa263afd372f0ecb7449f46463a74b6ccdd9 123992 groonga-plugin-suggest-dbgsym_8.0.0-1_armhf.deb
 b6100634f1793f68c821e344d302a076fa891b476f73a300279992ccc1079b87 37420 groonga-plugin-suggest_8.0.0-1_armhf.deb
 33fdbe3f9b15cd6c3368093890c2cc97c3261aac3d9f30628e9b56ffcb5d1e08 10080 groonga-token-filter-stem-dbgsym_8.0.0-1_armhf.deb
 7100f4bf60bd83b3701ceca47551e0d420c1af41f47da2f4cf78751e21c5ce14 12176 groonga-token-filter-stem_8.0.0-1_armhf.deb
 41dced13e258389a350abfb2fa12a5e65ff28c45beb03d27d418c48b1fa1d7f2 13724 groonga-tokenizer-mecab-dbgsym_8.0.0-1_armhf.deb
 7725e8a575e31ba7e5cfd169f154f566f9efde00ca06aa33b5bafc2fa6b20d5c 13820 groonga-tokenizer-mecab_8.0.0-1_armhf.deb
 c621bf2a8220ac9ac8ce350db9baf16edd1d4374053f510ba40d2e601e626694 9113 groonga_8.0.0-1_armhf.buildinfo
 044e9f06c2b7d34007a22073b8fefbab0b8f50288475652c3e0304d3205b247d 9100 groonga_8.0.0-1_armhf.deb
 66780b2ccf27f374f88b99ab72f0226d9a10f2d658c89da4e61f9f5060569a7d 33976 libgroonga-dev_8.0.0-1_armhf.deb
 421f19341207f1e6cbf27d2aca133480e14a6f2fc0e837db3c347a1e40e89cf8 3952816 libgroonga0-dbgsym_8.0.0-1_armhf.deb
 703c9a08a1eabc7ded6b0afa9e84e3dd51f92fd4faade4ba40a1d6b75dbc2b9f 1330124 libgroonga0_8.0.0-1_armhf.deb
Files:
 1bdf639860782c6f0554c9aa88445d19 141556 debug optional groonga-bin-dbgsym_8.0.0-1_armhf.deb
 b1b0e1cc3978e527e3417d97de24f3c8 253532 database optional groonga-bin_8.0.0-1_armhf.deb
 f9c0692c466b015b0b0305e2e82cefa2 2079484 debug optional groonga-httpd-dbgsym_8.0.0-1_armhf.deb
 d8106d6b41ab699c85b8ada4fc897d36 318448 database optional groonga-httpd_8.0.0-1_armhf.deb
 432bcb1628bb79c31859358e2772842f 123992 debug optional groonga-plugin-suggest-dbgsym_8.0.0-1_armhf.deb
 2ae82a50a80b346704d117818676c55c 37420 libs optional groonga-plugin-suggest_8.0.0-1_armhf.deb
 b84d214b1405305f4d4ae24f774be223 10080 debug optional groonga-token-filter-stem-dbgsym_8.0.0-1_armhf.deb
 4ba29a1e0cac110bc935777c4fea41c2 12176 libs optional groonga-token-filter-stem_8.0.0-1_armhf.deb
 284adc74a8c1b70f67ee724cefd38ef6 13724 debug optional groonga-tokenizer-mecab-dbgsym_8.0.0-1_armhf.deb
 ebf0c3d313c9c89310d8b8b9088fab15 13820 libs optional groonga-tokenizer-mecab_8.0.0-1_armhf.deb
 abcf05f7e11a0c93286208f48705599a 9113 database optional groonga_8.0.0-1_armhf.buildinfo
 34588456cf49ffeb63aa50aa20bcd1ba 9100 database optional groonga_8.0.0-1_armhf.deb
 ab70fdb9090592d84806018e10cc4a13 33976 libdevel optional libgroonga-dev_8.0.0-1_armhf.deb
 572682f4af9d06c2a90791c257a7987a 3952816 debug optional libgroonga0-dbgsym_8.0.0-1_armhf.deb
 1d133bde25fb7565ee955d1b8c9f1f94 1330124 libs optional libgroonga0_8.0.0-1_armhf.deb

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


groonga-bin-dbgsym_8.0.0-1_armhf.deb
------------------------------------

 new Debian package, version 2.0.
 size 141556 bytes: control archive=636 bytes.
     430 bytes,    12 lines      control              
     318 bytes,     3 lines      md5sums              
 Package: groonga-bin-dbgsym
 Source: groonga
 Version: 8.0.0-1
 Auto-Built-Package: debug-symbols
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 176
 Depends: groonga-bin (= 8.0.0-1)
 Section: debug
 Priority: optional
 Description: debug symbols for groonga-bin
 Build-Ids: 322264af7d7032330ef40749c2356b2d91e3878f 73ef0f68ea7a98c2f1a9a77cd8cd519b415d8eaa e97ef19cccb7d3f9214c7246f1e4118112dc09bf

drwxr-xr-x root/root         0 2018-02-14 14:35 ./
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/debug/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/debug/.build-id/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/debug/.build-id/32/
-rw-r--r-- root/root     58648 2018-02-14 14:35 ./usr/lib/debug/.build-id/32/2264af7d7032330ef40749c2356b2d91e3878f.debug
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/debug/.build-id/73/
-rw-r--r-- root/root     87924 2018-02-14 14:35 ./usr/lib/debug/.build-id/73/ef0f68ea7a98c2f1a9a77cd8cd519b415d8eaa.debug
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/debug/.build-id/e9/
-rw-r--r-- root/root     19780 2018-02-14 14:35 ./usr/lib/debug/.build-id/e9/7ef19cccb7d3f9214c7246f1e4118112dc09bf.debug
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/doc/
lrwxrwxrwx root/root         0 2018-02-14 14:35 ./usr/share/doc/groonga-bin-dbgsym -> groonga-bin


groonga-bin_8.0.0-1_armhf.deb
-----------------------------

 new Debian package, version 2.0.
 size 253532 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: 8.0.0-1
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 1122
 Depends: libc6 (>= 2.15), libgcc1 (>= 1:3.5), libgroonga0 (= 8.0.0-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 2018-02-14 14:35 ./
drwxr-xr-x root/root         0 2018-02-14 14:35 ./etc/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./etc/groonga/
-rw-r--r-- root/root       303 2018-02-14 14:35 ./etc/groonga/groonga.conf
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/bin/
-rwxr-xr-x root/root      9684 2018-02-14 14:35 ./usr/bin/grndb
-rwxr-xr-x root/root     71840 2018-02-14 14:35 ./usr/bin/groonga
-rwxr-xr-x root/root     38664 2018-02-14 14:35 ./usr/bin/groonga-benchmark
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/doc/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/doc/groonga-bin/
-rw-r--r-- root/root      3837 2018-02-14 14:35 ./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 2018-02-14 14:35 ./usr/share/groonga/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/groonga/html/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/groonga/html/admin/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/groonga/html/admin/css/
-rw-r--r-- root/root      1523 2018-02-14 14:35 ./usr/share/groonga/html/admin/css/groonga-admin.css
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/groonga/html/admin/css/redmond/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/groonga/html/admin/css/redmond/images/
-rw-r--r-- root/root       180 2018-02-14 14:35 ./usr/share/groonga/html/admin/css/redmond/images/ui-bg_flat_0_aaaaaa_40x100.png
-rw-r--r-- root/root       182 2018-02-14 14:35 ./usr/share/groonga/html/admin/css/redmond/images/ui-bg_flat_55_fbec88_40x100.png
-rw-r--r-- root/root       124 2018-02-14 14:35 ./usr/share/groonga/html/admin/css/redmond/images/ui-bg_glass_75_d0e5f5_1x400.png
-rw-r--r-- root/root       123 2018-02-14 14:35 ./usr/share/groonga/html/admin/css/redmond/images/ui-bg_glass_85_dfeffc_1x400.png
-rw-r--r-- root/root       119 2018-02-14 14:35 ./usr/share/groonga/html/admin/css/redmond/images/ui-bg_glass_95_fef1ec_1x400.png
-rw-r--r-- root/root      4033 2018-02-14 14:35 ./usr/share/groonga/html/admin/css/redmond/images/ui-bg_gloss-wave_55_5c9ccc_500x100.png
-rw-r--r-- root/root       104 2018-02-14 14:35 ./usr/share/groonga/html/admin/css/redmond/images/ui-bg_inset-hard_100_f5f8f9_1x100.png
-rw-r--r-- root/root        88 2018-02-14 14:35 ./usr/share/groonga/html/admin/css/redmond/images/ui-bg_inset-hard_100_fcfdfd_1x100.png
-rw-r--r-- root/root      4369 2018-02-14 14:35 ./usr/share/groonga/html/admin/css/redmond/images/ui-icons_217bc0_256x240.png
-rw-r--r-- root/root      4369 2018-02-14 14:35 ./usr/share/groonga/html/admin/css/redmond/images/ui-icons_2e83ff_256x240.png
-rw-r--r-- root/root      4369 2018-02-14 14:35 ./usr/share/groonga/html/admin/css/redmond/images/ui-icons_469bdd_256x240.png
-rw-r--r-- root/root      5355 2018-02-14 14:35 ./usr/share/groonga/html/admin/css/redmond/images/ui-icons_6da8d5_256x240.png
-rw-r--r-- root/root      4369 2018-02-14 14:35 ./usr/share/groonga/html/admin/css/redmond/images/ui-icons_cd0a0a_256x240.png
-rw-r--r-- root/root      4369 2018-02-14 14:35 ./usr/share/groonga/html/admin/css/redmond/images/ui-icons_d8e7f3_256x240.png
-rw-r--r-- root/root      5355 2018-02-14 14:35 ./usr/share/groonga/html/admin/css/redmond/images/ui-icons_f9bd01_256x240.png
-rw-r--r-- root/root     33359 2018-02-14 14:35 ./usr/share/groonga/html/admin/css/redmond/jquery-ui-1.8.18.custom.css
-rw-r--r-- root/root      1406 2018-02-14 14:35 ./usr/share/groonga/html/admin/favicon.ico
-rw-r--r-- root/root       682 2018-02-14 14:35 ./usr/share/groonga/html/admin/favicon.png
-rw-r--r-- root/root      4273 2018-02-14 14:35 ./usr/share/groonga/html/admin/favicon.svg
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/groonga/html/admin/images/
-rw-r--r-- root/root      6064 2018-02-14 14:35 ./usr/share/groonga/html/admin/images/groonga.png
-rw-r--r-- root/root      9996 2018-02-14 14:35 ./usr/share/groonga/html/admin/images/groonga.svg
-rw-r--r-- root/root       673 2018-02-14 14:35 ./usr/share/groonga/html/admin/images/loading.gif
-rw-r--r-- root/root     13032 2018-02-14 14:35 ./usr/share/groonga/html/admin/index.html
-rw-r--r-- root/root     13432 2018-02-14 14:35 ./usr/share/groonga/html/admin/index.ja.html
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/groonga/html/admin/js/
-rw-r--r-- root/root     43103 2018-02-14 14:35 ./usr/share/groonga/html/admin/js/groonga-admin.ja.js
-rw-r--r-- root/root     42828 2018-02-14 14:35 ./usr/share/groonga/html/admin/js/groonga-admin.js
-rw-r--r-- root/root    252881 2018-02-14 14:35 ./usr/share/groonga/html/admin/js/jquery-1.7.2.js
-rw-r--r-- root/root    377848 2018-02-14 14:35 ./usr/share/groonga/html/admin/js/jquery-ui-1.8.18.custom.js
-rw-r--r-- root/root    125201 2018-02-14 14:35 ./usr/share/groonga/html/admin/js/jquery.flot-0.8.3.js
-rw-r--r-- root/root      1069 2018-02-14 14:35 ./usr/share/groonga/html/admin/js/jquery.flot.license.txt
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/lintian/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/lintian/overrides/
-rw-r--r-- root/root       164 2017-10-06 17:08 ./usr/share/lintian/overrides/groonga-bin


groonga-httpd-dbgsym_8.0.0-1_armhf.deb
--------------------------------------

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

drwxr-xr-x root/root         0 2018-02-14 14:35 ./
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/debug/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/debug/.build-id/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/debug/.build-id/29/
-rw-r--r-- root/root   2298884 2018-02-14 14:35 ./usr/lib/debug/.build-id/29/8df7abb592687c719eac053be5118c86012939.debug
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/doc/
lrwxrwxrwx root/root         0 2018-02-14 14:35 ./usr/share/doc/groonga-httpd-dbgsym -> groonga-httpd


groonga-httpd_8.0.0-1_armhf.deb
-------------------------------

 new Debian package, version 2.0.
 size 318448 bytes: control archive=1988 bytes.
     667 bytes,    20 lines      conffiles            
     746 bytes,    18 lines      control              
     427 bytes,     6 lines      md5sums              
    1993 bytes,    56 lines   *  postinst             #!/bin/sh
    1268 bytes,    40 lines   *  postrm               #!/bin/sh
     208 bytes,     7 lines   *  prerm                #!/bin/sh
 Package: groonga-httpd
 Source: groonga
 Version: 8.0.0-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 (= 8.0.0-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 2018-02-14 14:35 ./
drwxr-xr-x root/root         0 2018-02-14 14:35 ./etc/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./etc/default/
-rw-r--r-- root/root       738 2017-10-06 17:08 ./etc/default/groonga-httpd
drwxr-xr-x root/root         0 2018-02-14 14:35 ./etc/groonga/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./etc/groonga/httpd/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./etc/groonga/httpd/client_body_temp/
-rw-r--r-- root/root      1077 2018-02-14 14:35 ./etc/groonga/httpd/fastcgi.conf
-rw-r--r-- root/root      1077 2018-02-14 14:35 ./etc/groonga/httpd/fastcgi.conf.default
-rw-r--r-- root/root      1007 2018-02-14 14:35 ./etc/groonga/httpd/fastcgi_params
-rw-r--r-- root/root      1007 2018-02-14 14:35 ./etc/groonga/httpd/fastcgi_params.default
drwxr-xr-x root/root         0 2018-02-14 14:35 ./etc/groonga/httpd/fastcgi_temp/
-rw-r--r-- root/root      2378 2018-02-14 14:35 ./etc/groonga/httpd/groonga-httpd.conf
drwxr-xr-x root/root         0 2018-02-14 14:35 ./etc/groonga/httpd/html/
-rw-r--r-- root/root       537 2018-02-14 14:35 ./etc/groonga/httpd/html/50x.html
-rw-r--r-- root/root       612 2018-02-14 14:35 ./etc/groonga/httpd/html/index.html
-rw-r--r-- root/root      2837 2018-02-14 14:35 ./etc/groonga/httpd/koi-utf
-rw-r--r-- root/root      2223 2018-02-14 14:35 ./etc/groonga/httpd/koi-win
drwxr-xr-x root/root         0 2018-02-14 14:35 ./etc/groonga/httpd/logs/
-rw-r--r-- root/root      5170 2018-02-14 14:35 ./etc/groonga/httpd/mime.types
-rw-r--r-- root/root      5170 2018-02-14 14:35 ./etc/groonga/httpd/mime.types.default
-rw-r--r-- root/root      2656 2018-02-14 14:35 ./etc/groonga/httpd/nginx.conf.default
drwxr-xr-x root/root         0 2018-02-14 14:35 ./etc/groonga/httpd/proxy_temp/
-rw-r--r-- root/root       636 2018-02-14 14:35 ./etc/groonga/httpd/scgi_params
-rw-r--r-- root/root       636 2018-02-14 14:35 ./etc/groonga/httpd/scgi_params.default
drwxr-xr-x root/root         0 2018-02-14 14:35 ./etc/groonga/httpd/scgi_temp/
-rw-r--r-- root/root       664 2018-02-14 14:35 ./etc/groonga/httpd/uwsgi_params
-rw-r--r-- root/root       664 2018-02-14 14:35 ./etc/groonga/httpd/uwsgi_params.default
drwxr-xr-x root/root         0 2018-02-14 14:35 ./etc/groonga/httpd/uwsgi_temp/
-rw-r--r-- root/root      3610 2018-02-14 14:35 ./etc/groonga/httpd/win-utf
drwxr-xr-x root/root         0 2018-02-14 14:35 ./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 2018-02-14 14:35 ./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 2018-02-14 14:35 ./lib/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./lib/systemd/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./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 2018-02-14 14:35 ./usr/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/sbin/
-rwxr-xr-x root/root    808856 2018-02-14 14:35 ./usr/sbin/groonga-httpd
-rwxr-xr-x root/root      2555 2018-02-14 14:35 ./usr/sbin/groonga-httpd-restart
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/doc/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/doc/groonga-httpd/
-rw-r--r-- root/root      3837 2018-02-14 14:35 ./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 2018-02-14 14:35 ./usr/share/lintian/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./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 2018-02-14 14:35 ./var/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./var/log/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./var/log/groonga/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./var/log/groonga/httpd/


groonga-plugin-suggest-dbgsym_8.0.0-1_armhf.deb
-----------------------------------------------

 new Debian package, version 2.0.
 size 123992 bytes: control archive=688 bytes.
     504 bytes,    12 lines      control              
     424 bytes,     4 lines      md5sums              
 Package: groonga-plugin-suggest-dbgsym
 Source: groonga
 Version: 8.0.0-1
 Auto-Built-Package: debug-symbols
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 162
 Depends: groonga-plugin-suggest (= 8.0.0-1)
 Section: debug
 Priority: optional
 Description: debug symbols for groonga-plugin-suggest
 Build-Ids: 37954fc13672662247aead7926736019adf0bec3 51bb8c1a99598165a60c6a5ec30941e654027d5c a1c64dc2f8022414f3d7250dd0471b9201fdfa27 ae5cae773cc372a5b8bc0897a272e8369861e377

drwxr-xr-x root/root         0 2018-02-14 14:35 ./
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/debug/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/debug/.build-id/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/debug/.build-id/37/
-rw-r--r-- root/root     43868 2018-02-14 14:35 ./usr/lib/debug/.build-id/37/954fc13672662247aead7926736019adf0bec3.debug
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/debug/.build-id/51/
-rw-r--r-- root/root     15696 2018-02-14 14:35 ./usr/lib/debug/.build-id/51/bb8c1a99598165a60c6a5ec30941e654027d5c.debug
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/debug/.build-id/a1/
-rw-r--r-- root/root     35092 2018-02-14 14:35 ./usr/lib/debug/.build-id/a1/c64dc2f8022414f3d7250dd0471b9201fdfa27.debug
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/debug/.build-id/ae/
-rw-r--r-- root/root     55696 2018-02-14 14:35 ./usr/lib/debug/.build-id/ae/5cae773cc372a5b8bc0897a272e8369861e377.debug
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/doc/
lrwxrwxrwx root/root         0 2018-02-14 14:35 ./usr/share/doc/groonga-plugin-suggest-dbgsym -> groonga-plugin-suggest


groonga-plugin-suggest_8.0.0-1_armhf.deb
----------------------------------------

 new Debian package, version 2.0.
 size 37420 bytes: control archive=936 bytes.
     742 bytes,    17 lines      control              
     557 bytes,     7 lines      md5sums              
 Package: groonga-plugin-suggest
 Source: groonga
 Version: 8.0.0-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 (= 8.0.0-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 2018-02-14 14:35 ./
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/bin/
-rwxr-xr-x root/root      9724 2018-02-14 14:35 ./usr/bin/groonga-suggest-create-dataset
-rwxr-xr-x root/root     22224 2018-02-14 14:35 ./usr/bin/groonga-suggest-httpd
-rwxr-xr-x root/root     38520 2018-02-14 14:35 ./usr/bin/groonga-suggest-learner
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/suggest/
-rw-r--r-- root/root     30008 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/suggest/suggest.so
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/doc/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/doc/groonga-plugin-suggest/
-rw-r--r-- root/root      3837 2018-02-14 14:35 ./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 2018-02-14 14:35 ./usr/share/lintian/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./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_8.0.0-1_armhf.deb
--------------------------------------------------

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

drwxr-xr-x root/root         0 2018-02-14 14:35 ./
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/debug/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/debug/.build-id/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/debug/.build-id/70/
-rw-r--r-- root/root     12584 2018-02-14 14:35 ./usr/lib/debug/.build-id/70/5638e5c6e134d040f09f54bffcf05e74765cb5.debug
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/doc/
lrwxrwxrwx root/root         0 2018-02-14 14:35 ./usr/share/doc/groonga-token-filter-stem-dbgsym -> groonga-token-filter-stem


groonga-token-filter-stem_8.0.0-1_armhf.deb
-------------------------------------------

 new Debian package, version 2.0.
 size 12176 bytes: control archive=792 bytes.
     655 bytes,    17 lines      control              
     278 bytes,     3 lines      md5sums              
 Package: groonga-token-filter-stem
 Source: groonga
 Version: 8.0.0-1
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 41
 Depends: libc6 (>= 2.4), libgroonga0 (= 8.0.0-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 2018-02-14 14:35 ./
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters/
-rw-r--r-- root/root      9476 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters/stem.so
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/doc/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/doc/groonga-token-filter-stem/
-rw-r--r-- root/root      3837 2018-02-14 14:35 ./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_8.0.0-1_armhf.deb
------------------------------------------------

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

drwxr-xr-x root/root         0 2018-02-14 14:35 ./
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/debug/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/debug/.build-id/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/debug/.build-id/36/
-rw-r--r-- root/root     17088 2018-02-14 14:35 ./usr/lib/debug/.build-id/36/c1df9316f5929e282ebfefc5cb2147789b5b8b.debug
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/doc/
lrwxrwxrwx root/root         0 2018-02-14 14:35 ./usr/share/doc/groonga-tokenizer-mecab-dbgsym -> groonga-tokenizer-mecab


groonga-tokenizer-mecab_8.0.0-1_armhf.deb
-----------------------------------------

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


groonga_8.0.0-1_armhf.deb
-------------------------

 new Debian package, version 2.0.
 size 9100 bytes: control archive=656 bytes.
     569 bytes,    14 lines      control              
     142 bytes,     2 lines      md5sums              
 Package: groonga
 Version: 8.0.0-1
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 26
 Depends: groonga-bin (= 8.0.0-1), groonga-plugin-suggest (= 8.0.0-1), groonga-doc (= 8.0.0-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 2018-02-14 14:35 ./
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/doc/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/doc/groonga/
-rw-r--r-- root/root      3837 2018-02-14 14:35 ./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_8.0.0-1_armhf.deb
--------------------------------

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

 new Debian package, version 2.0.
 size 3952816 bytes: control archive=952 bytes.
     694 bytes,    13 lines      control              
     954 bytes,     9 lines      md5sums              
 Package: libgroonga0-dbgsym
 Source: groonga
 Version: 8.0.0-1
 Auto-Built-Package: debug-symbols
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 4563
 Depends: libgroonga0 (= 8.0.0-1)
 Section: debug
 Priority: optional
 Multi-Arch: same
 Description: debug symbols for libgroonga0
 Build-Ids: 4415085cfc3ff014ebc53531f0384ac01016f91d 4ddf19444c16f6a25855c01ed5b31430828f7a8d 5596eded65f2702182d3af327beec844040b430f 7bac6298d93719cbfba6f3121969af6e8997f7fb b2bf2524245db992644c8acb150bd5bdb149c6a8 b8cec69ddb761ea7b04ae2dc4441258ba067f804 cf42605d307e926c5ee003eb71aa18102689fb0d e25d07e6582aaa4e2d352b4eb9eaa9a54d9599a1 e92e0b686632b885fc995e32edf3169773985e88

drwxr-xr-x root/root         0 2018-02-14 14:35 ./
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/debug/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/debug/.build-id/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/debug/.build-id/44/
-rw-r--r-- root/root     12308 2018-02-14 14:35 ./usr/lib/debug/.build-id/44/15085cfc3ff014ebc53531f0384ac01016f91d.debug
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/debug/.build-id/4d/
-rw-r--r-- root/root     11112 2018-02-14 14:35 ./usr/lib/debug/.build-id/4d/df19444c16f6a25855c01ed5b31430828f7a8d.debug
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/debug/.build-id/55/
-rw-r--r-- root/root      9596 2018-02-14 14:35 ./usr/lib/debug/.build-id/55/96eded65f2702182d3af327beec844040b430f.debug
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/debug/.build-id/7b/
-rw-r--r-- root/root     12448 2018-02-14 14:35 ./usr/lib/debug/.build-id/7b/ac6298d93719cbfba6f3121969af6e8997f7fb.debug
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/debug/.build-id/b2/
-rw-r--r-- root/root     10952 2018-02-14 14:35 ./usr/lib/debug/.build-id/b2/bf2524245db992644c8acb150bd5bdb149c6a8.debug
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/debug/.build-id/b8/
-rw-r--r-- root/root     11620 2018-02-14 14:35 ./usr/lib/debug/.build-id/b8/cec69ddb761ea7b04ae2dc4441258ba067f804.debug
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/debug/.build-id/cf/
-rw-r--r-- root/root     10804 2018-02-14 14:35 ./usr/lib/debug/.build-id/cf/42605d307e926c5ee003eb71aa18102689fb0d.debug
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/debug/.build-id/e2/
-rw-r--r-- root/root     15296 2018-02-14 14:35 ./usr/lib/debug/.build-id/e2/5d07e6582aaa4e2d352b4eb9eaa9a54d9599a1.debug
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/debug/.build-id/e9/
-rw-r--r-- root/root   4555068 2018-02-14 14:35 ./usr/lib/debug/.build-id/e9/2e0b686632b885fc995e32edf3169773985e88.debug
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/doc/
lrwxrwxrwx root/root         0 2018-02-14 14:35 ./usr/share/doc/libgroonga0-dbgsym -> libgroonga0


libgroonga0_8.0.0-1_armhf.deb
-----------------------------

 new Debian package, version 2.0.
 size 1330124 bytes: control archive=3120 bytes.
      26 bytes,     1 lines      conffiles            
     710 bytes,    18 lines      control              
    8310 bytes,    82 lines      md5sums              
      25 bytes,     1 lines      shlibs               
      67 bytes,     2 lines      triggers             
 Package: libgroonga0
 Source: groonga
 Version: 8.0.0-1
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 6041
 Depends: libatomic1 (>= 4.8), libc6 (>= 2.17), libgcc1 (>= 1:3.5), liblz4-1 (>= 0.0~r130), libmsgpackc2 (>= 0.5.1), libstdc++6 (>= 5), libzstd1 (>= 1.3.2), 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 2018-02-14 14:35 ./
drwxr-xr-x root/root         0 2018-02-14 14:35 ./etc/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./etc/groonga/
-rw-r--r-- root/root       101 2018-02-14 14:35 ./etc/groonga/synonyms.tsv
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/
-rw-r--r-- root/root     13572 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/index_column.so
-rw-r--r-- root/root      5380 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/math.so
-rw-r--r-- root/root      9528 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/number.so
-rw-r--r-- root/root      9476 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/string.so
-rw-r--r-- root/root      9476 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/time.so
-rw-r--r-- root/root      9476 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/vector.so
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/query_expanders/
-rw-r--r-- root/root      9476 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/query_expanders/tsv.so
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/ruby/
-rw-r--r-- root/root       906 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/ruby/eval.rb
-rw-r--r-- root/root       406 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding.rb
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/
-rw-r--r-- root/root      4290 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/dynamic_columns.rb
-rw-r--r-- root/root       204 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/keys_parsable.rb
-rw-r--r-- root/root      6792 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/logical_count.rb
-rw-r--r-- root/root      8669 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/logical_enumerator.rb
-rw-r--r-- root/root      1032 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/logical_parameters.rb
-rw-r--r-- root/root     25158 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/logical_range_filter.rb
-rw-r--r-- root/root     26705 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/logical_select.rb
-rw-r--r-- root/root       795 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/logical_shard_list.rb
-rw-r--r-- root/root     10410 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/logical_table_remove.rb
-rw-r--r-- root/root       165 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/parameters.rb
-rw-r--r-- root/root      3515 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/range_expression_builder.rb
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters/
-rw-r--r-- root/root      5380 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters/stop_word.so
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/
-rw-r--r-- root/root        64 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/accessor.rb
-rw-r--r-- root/root       740 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/backtrace_entry.rb
-rw-r--r-- root/root      1306 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/command.rb
-rw-r--r-- root/root       254 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/command_input.rb
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/command_line/
-rw-r--r-- root/root     15320 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/command_line/grndb.rb
-rw-r--r-- root/root      4005 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/command_line_parser.rb
-rw-r--r-- root/root      1799 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/context.rb
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/context/
-rw-r--r-- root/root       549 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/context/error_level.rb
-rw-r--r-- root/root      7760 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/context/rc.rb
-rw-r--r-- root/root      1567 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/database.rb
-rw-r--r-- root/root       189 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/error.rb
-rw-r--r-- root/root       344 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/eval_context.rb
-rw-r--r-- root/root      1705 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression.rb
-rw-r--r-- root/root       341 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_rewriter.rb
-rw-r--r-- root/root      1172 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_rewriters.rb
-rw-r--r-- root/root      1677 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_size_estimator.rb
-rw-r--r-- root/root       341 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree.rb
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/
-rw-r--r-- root/root       266 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/accessor.rb
-rw-r--r-- root/root      1815 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/binary_operation.rb
-rw-r--r-- root/root       393 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/constant.rb
-rw-r--r-- root/root      1927 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/function_call.rb
-rw-r--r-- root/root       269 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/index_column.rb
-rw-r--r-- root/root       759 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/logical_operation.rb
-rw-r--r-- root/root       265 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/options.rb
-rw-r--r-- root/root       314 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/procedure.rb
-rw-r--r-- root/root       332 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/variable.rb
-rw-r--r-- root/root      3032 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree_builder.rb
-rw-r--r-- root/root        71 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/fixed_size_column.rb
-rw-r--r-- root/root       877 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/groonga-log.rb
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/groonga-log/
-rw-r--r-- root/root      2395 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/groonga-log/parser.rb
-rw-r--r-- root/root       978 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/groonga-log/statistic.rb
-rw-r--r-- root/root        42 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/groonga-log/version.rb
-rw-r--r-- root/root       203 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/id.rb
-rw-r--r-- root/root      1203 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/index_column.rb
-rw-r--r-- root/root       310 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/index_cursor.rb
-rw-r--r-- root/root       192 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/index_info.rb
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/initialize/
-rw-r--r-- root/root       621 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/initialize/post.rb
-rw-r--r-- root/root        46 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/initialize/pre.rb
-rw-r--r-- root/root       547 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/labeled_arguments.rb
-rw-r--r-- root/root       948 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/logger.rb
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/logger/
-rw-r--r-- root/root       865 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/logger/level.rb
-rw-r--r-- root/root       233 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/object.rb
-rw-r--r-- root/root       392 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/operator.rb
-rw-r--r-- root/root       255 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/plugin_loader.rb
-rw-r--r-- root/root       215 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/query_logger.rb
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/query_logger/
-rw-r--r-- root/root       941 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/query_logger/flag.rb
-rw-r--r-- root/root       741 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/record.rb
-rw-r--r-- root/root      1486 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/require.rb
-rw-r--r-- root/root      1109 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/scan_info.rb
-rw-r--r-- root/root     16273 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/scan_info_builder.rb
-rw-r--r-- root/root     10195 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/scan_info_data.rb
-rw-r--r-- root/root      4891 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/scan_info_data_size_estimator.rb
-rw-r--r-- root/root       362 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/scan_info_search_index.rb
-rw-r--r-- root/root      3866 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/table.rb
-rw-r--r-- root/root       462 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/table_cursor.rb
-rw-r--r-- root/root        74 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/variable_size_column.rb
-rw-r--r-- root/root       323 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/writer.rb
lrwxrwxrwx root/root         0 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/libgroonga.so.0 -> libgroonga.so.0.0.0
-rw-r--r-- root/root   5825224 2018-02-14 14:35 ./usr/lib/arm-linux-gnueabihf/libgroonga.so.0.0.0
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/doc/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./usr/share/doc/libgroonga0/
-rw-r--r-- root/root      3837 2018-02-14 14:35 ./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 2018-02-14 14:35 ./usr/share/lintian/
drwxr-xr-x root/root         0 2018-02-14 14:35 ./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: 243948
Build-Time: 2073
Distribution: buster-staging
Host Architecture: armhf
Install-Time: 467
Job: groonga_8.0.0-1
Machine Architecture: armhf
Package: groonga
Package-Time: 2598
Source-Version: 8.0.0-1
Space: 243948
Status: successful
Version: 8.0.0-1
--------------------------------------------------------------------------------
Finished at 2018-02-26T11:18:29Z
Build needed 00:43:18, 243948k disc space